update libgit2
fix rugged_note compilation for new API
update to new libgit2 remote API, fix segfault

Rugged::Remote.new(repo, url_or_name)

Inmemory remotes can no longer be created with name,
so it doesn't make sense to have it as a parameter.

Remote.new creates a new inmemeory remote if passed a valid url
or lookups remote by name.

Also creating a remote with git_remote_new and using ``nil`` as
name resulted in segfault when calling remote.name, so we do
a nil check before returning a string from the remote name.
This also fixes issues with current inmemory remotes created
with ``git_remote_create_inmemory``, since they are nameless.
add `force` option to obj.create_note
split remote.new in remote.new and remote.lookup
raise ArgumentError on invalid remote url
Merge pull request #154 from nvloff/update_libgit2

Update libgit2