xs: update libgit2
Remote.xs: rename add method to create, remove new method
{Repository,Tree}.xs: update git_diff_* functions names
Repository.xs: update the clone method to take a generic %opts parameter
Repository.xs: update checkout to take a generic %opts parameter + test
Repository.pm: add docs for checkout strategies
TODO: update
Repository.xs: fix warning