Let $f: \mathbb{R} \to \mathbb{R}$ and $g: \mathbb{R} \to \mathbb{R}$ be functions satisfying
$$f(x+y) = f(x) + f(y) + f(x)f(y) \quad \text{and} \quad f(x) = xg(x)$$
for all $x, y \in \mathbb{R}$. If $\lim_{x \to 0} g(x) = 1$, then which of the following statements is(are) TRUE?
(A) $f$ is differentiable at every $x \in \mathbb{R}$
(B) If $g(0) = 1$, then $g$ is differentiable at every $x \in \mathbb{R}$
(C) The derivative $f'(1)$ is equal to 1
(D) The derivative $f'(0)$ is equal to 1