libgit2: fix double-free
libgit2: use set_ob() instead of wrap_odb() for a custom backend

The purpose of git_repository_warp_odb() is not to use a repository with
a custom odb backend, but to access an odb via functions which want a
repository object. A repository build this way has no path, no refs db,
no configuration, no worktree, etc. It is useless unless you're
e.g. trying to extract information out of a packfile via
git_object_lookup() and friends.

In order to have an otherwise "normal" repository but use a custom
backend for the objects, you need to open/init the repository as you
usually do and then set the custom odb.
Small fixes
Merge pull request #1 from progit/correction-corrections

Small fixes
Merge pull request #108 from carlosmn/libgit2-corrections

Libgit2 corrections