Functoriality of the Fundamental group The fundamental group is a functor from the category of pointed topological spaces to the category of groups. 
Therefore every base-point preserving continuous function $f$ between pointed topological spaces induces a homomorphism $f_*$ between the fundamental groups. This is done by composing the loops with $f$, which is well-defined, because homotopy is also preserved under $f$.
Can we switch this around? 
Every group is the fundamental group of a CW-complex, which can be constructed according to how many generators and relations the group has. 
Can a continuous function be constructed for every homomorphism such that the continuous function induces the homomorphism? If the fundamental group functor is 'surjective', one has a pre-image at least. 
How do you go from the algebraic to the topological with the morphisms?  I have no idea.
 A: Let $B : \mathbf{Grp} \to \mathbf{Top}_*$ be the functor obtained by defining $B G$ to be the geometric realisation of the nerve of $G$ (considered as a 1-object category), i.e. the simplicial set 
$$\cdots \mathrel{\lower{0.5ex}{\begin{array}{c} \smash{\to} \\ \smash{\to} \\ \smash{\to} \\ \smash{\to} \end{array}}} G \times G \mathrel{\lower{0.5ex}{\begin{array}{c} \smash{\to} \\ \smash{\to} \\ \smash{\to} \end{array}}} G \rightrightarrows 1$$
where the degeneracies maps insert the unit element at the appropriate location and the face maps compose adjacent pairs of elements.
It is well-known that $B G$ is a $K (G, 1)$ Eilenberg–MacLane space, i.e. $B G$ is a path-connected topological space such that $\pi_1 (B G, *) \cong G$ and $\pi_n (B G, *) = 1$ for all $n > 1$. Moreover, the isomorphism $\pi_1 (B G, *) \cong G$ is induced by the obvious correspondence: send each element of $G$ to the loop in $B G$ that realises the corresponding 1-simplex in the nerve. It follows that $\pi_1 \circ B$ is naturally isomorphic to $\mathrm{id}_{\mathbf{Grp}}$ as a functor.
