Change to GCommitNode's datetime field

Previously, the dateAndTime field was a string derived from the
toString() method of QDateTime. Now it is a QDateTime object, to enable
easier use in the UI
Framework for GBranchLabel class

GBranchLabel will represent a label showing a branch at a particular
commit
GBranchLabel object finished

GBranchLabel now works correctly and displays its branch name in its
center. Still not connected to branches in repo
Merge branch 'master' into canvasUI
Revert "Merge branch 'master' into MainUI"

This reverts commit b29f2442824e9d4901073fc2ed6495feb575d211, reversing
changes made to 381a1a74e1669807c3a021c2bf4ca9c5cf641610.
Fixed compile time error

Added function contained various errors, function was removed
Merge
Fixed lots of stuff...

Somehow shit got broken, it's 2:33 AM, so I fixed it. I'll just leave
it at that
commit before merge. slight tweaks
ending this madness. Going back to main ui branch
Stable version. UpdateInfoWindow should work. ready for merge to master.