This lets us specify which set of rules to link to libgit2 we'll use during
build. Together with the changes to the Makefile, this lets you specify
make install
or
make install-static
to build either dynamically against the system-provided library or against the
version specified in the submodule.
The dynamic linking against the system library is still the default in order to
allow for the Go toolchain to build it when it's used as a dependency.
The option to ignore the server's certificate has been removed, replaced
witha callback for the user to perform their own checking.
Remote.Fetch() now performs opportunistic updates and takes a list of
refspecs to use as the active set for a particular fetch.