Unset the HOME env before calling git binary

If we do no unset the env, git will use a potential
.gitconfig which can alter results
Cleaned some code
Added support for Commit::getSubjectMessage and Commit::getBodyMessage
Fixed Commit::getShortMessage

Do not cache result since the method took arguments
Added support for remote branches
Added support for Commit::getIncludingBranches
Added some doc
Merge pull request #17 from lyrixx/feat-enhancement

Added some enhancement