Perfect, locally free groups exist. Such a thing has vanishing $H_1(G,\mathbb Z)$, has $H_p(G,M)=0$ for all $p\geq2$ and all $M$, and is not free. A. J. Berrick constructs an explicit example [here](http://www.math.nus.edu.sg/~matberic/ch1.ps).