Counterexample to if g ◦ f is surjective, then f and g are surjective I want less of an answer and more of an explanation if possible please.
I understand I'm looking for a range of either f and g that is NOT surjective(does not cover all the codomain), but that their composition is. 

This is because when $f$ is $A \rightarrow B$ and $g$ is $B \rightarrow C$, the "size" of $B$ may be higher than the one of $A$ and $C$.
For example, you might consider $f : \mathbb{N} \rightarrow \mathbb{N}^2$ where $f(n) = (n,0)$ and $g : \mathbb{N}^2 \rightarrow \mathbb{N}$ where $g(n,p) = n$.
Then, $g \circ f = id$ which is bijective hence surjective, but $f$ isn't surjective because there is no $y \in \mathbb{N}$ such that $f(y) = (0,1)$ which contradicts the definition of a surjection.
However, you can note that I have only given a counterexample to "$f$ is surjective". This is because $g \circ f$ is surjective $\implies g$ is surjective.
For us to prove it, recall that a function $h$ is surjective if and only if every element $x$ of the arrival set has at least an antecedent (that is an element $y$ of the starting set which verifies $h(y) = x$). 
Let's consider $x$ an element of the arrival set. Since $g \circ f$ is surjective, we have $y$ that verifies $(g \circ f) (y) = x$, so $g(f(y)) = x$. So $f(y)$ is an antecedent of $x$ by $g$. So $g$ is surjective.
EDIT : A minimal counter example would be $f : \{0\} \rightarrow \{0,1\}$ where $f(0) = 1$ and $g : \{0,1\} \rightarrow \{0\}$ where $g(0) = g(1) = 0$. Here, $g \circ f$ is $\{0\} \rightarrow \{0\}$ where $(g \circ f)(0) = 0$ which is surjective, but $f$ isn't because $1 \in \{0,1\}$ but there is no element $x$ in $\{0\}$ such that $f(x) = 1$.
