Add GraftedCommit object
Tests for repos with grafts
TODO: Object Stores to return GraftedCommits
getitem returns GraftedCommit

ObjectStores now have a grafts dict property

TODO: Repo is responsible for maintaining the grafts dictionary of
the objectstore.