The hard part seems to be proving that $H_2(\Sigma;\Bbb Z) = \Bbb Z$ for any closed connected oriented surface $\Sigma$. This requires to my eye either Poincare duality or the following triangulation proof.
0) $\Sigma$ is triangulable. Consider the graph whose vertices are the 2-simplices of $\Sigma$ and whose edges are between adjacent 2-simplices. One may pick a maximal sub-tree of this graph; it will contain every vertex, and some subset of the edges. One may use this maximal tree of 2-simplices to build a triangulation of the disc and a quotient map $D^2 \to \Sigma$ which is injective on the interior; use the 0-simplices and leftover 1-simplices to build a regular CW structure on $\Sigma$ with exactly one 2-cell. Now use cellular homology; the top boundary operator is zero because the boundary of this disc traverses each remaining 1-cell exactly twice, once in each direction; because these have opposite orientation, they cancel out. Thus the chain complex looks like $0 \to \Bbb Z\xrightarrow{0} C_1 \xrightarrow{\partial_1}\to C_0\to 0$, and the second cellular homology is thus $\Bbb Z$, as desired.
Here is a proof that $H_1(\Sigma;\Bbb Z) = \Bbb Z^{2g}$ by induction.
1) A surface of genus 0 is one such that every embedded curve separates the manifold, and hence is null-homologous. Every curve can be represented (after a homotopy) by one with a finite set of transverse self-intersections. Now trace out the curve; when it self-intersects for the first time, that portion may be thought of as an embedded curve; because that portion is null-homologous, our homology class can be represented by a curve with fewer self-intersections. Inducting downwards on the number of self-intersections, we see that $H_1(\Sigma;\Bbb Z) = 0$.
2) A surface of genus $g$ has a collection of $g$ curves you may cut along without disconnecting it. Cut along one of those to get a surface of genus $g-1$ with two boundary components; one may pick a path between the boundary components which does not intersect the given $(g-1)$ curves. Cut along this path to obtain a surface of genus $g-1$ with one boundary component. Reversing this procedure, one finds that we just showed that $\Sigma \cong \Sigma' \# T^2$ where $g(\Sigma) = g$ and $g(\Sigma') = g-1$. Now Mayer-Vietoris gives (using orientability!) that $H_1(\Sigma;\Bbb Z) = H_1(\Sigma';\Bbb Z) \oplus \Bbb Z^2$.
Inductively the calculation follows.
Secretly I just proved the classification theorem --- you only need the small additional info that $H_1(\Sigma;\Bbb Z) = 0 \implies \Sigma \cong S^2$, which follows similar lines as the triangulation argument in (0).