Utility methods to get Git info

Follow up to issues #199 and #263

**please don't merge right now!!**

**Async issue**  
I have some trouble as every Node.js utility to run command on the command line are Async (no execSync build in). ATM I added some callback, but I'm not sure that's great for a high level tool like Yeoman. I saw some `execSync` implementation out there (haven't test yet), but do we want to add a dependency for this? Could be good if we'd like to use `npm ls` to lookup installed generators, etc. Open question!

**Testing**  
I'm usually not so bad at getting tests right, but right now they are quite bad. I'm really not sure how to handle these as the method go get user config (and as just mocking the `exec` method seems pretty weak in term of added value). I'll think about it more, but I'm open to others idea and expertise!

Anyway, that'll get the ball rolling!