Added commit graph

Hi CVSAnalY team,

I decided to put my new changes to CVSAnalY instead of MininGit. This is my first batch of changes. It adds a commit graph to keep track of parents of commits. This commit graph currently only supports Git, as it is not necessary in Subversion and CVS. Hope someone could implement a Bzr version if it is necessary (I am not familiar with Bzr).

With regards to #1, I will pick features that I am actively using from MininGit and merge them into CVSAnalY incrementally, instead of merging all changes at once.