Fix checkout of a S4 class git_commit

* Completed the checkout of a S4 class git_commit to perform the
  checkout

* Added argument force to checkout methods to use strategy
  GIT_CHECKOUT_SAFE_CREATE or GIT_CHECOUT_FORCE. Default is force =
  FALSE.
Initial work with checkout and stash test cases