Since $\mathbb{Z}^d$ is a free group, shouldn't $H_i(\mathbb{Z}^2,\mathbb{Z})=0$ for every $i\geq 2$? Why isn't these two facts contraditory?
http://groupprops.subwiki.org/wiki/Group_cohomology_of_free_groups
http://groupprops.subwiki.org/wiki/Group_cohomology_of_free_abelian_groups
This is a terminology issue, and admittedly, the terminology is a bit confusing to digest the first time around. $\Bbb Z^d$ is a free abelian group, but not a free group for general $d$. That is, it is a free object in the category of abelian groups, but not a free object in the category of all groups. You might want to review the definition of a free group. In particular, note that the free group $F_S$ on a set $S$ is never abelian when $\#S > 1$ (in which case $F_S\cong\Bbb Z$, so the only free abelian group which is a free group is $\Bbb Z$).
It might help to think of these phrases as having parenthesis: "free abelian group" means a "free (abelian group)," as opposed to a group which is both free and abelian (the only such group is $\Bbb Z$, we might call it an "abelian (free group)"). The words here are not associative and not commutative! :P