Two small changes to increase library "utility"

(@gaurave)

--> toMap() in CommitObject returns a map with the fields normally output in toString() --> this is a nicer way to be able to access and format the CommitObject when printing in "git log" (currently have to use split('\n') with a bunch of if/else to highlight lines, indent etc).

--> getCommitGraph changing limit to an optional parameter to allow the git log default behaviour (given no paging) of listing all commits under the headSha. Also fixed minor indenting.
This should result in no behavioral changes for existing code.