Extract libgit2 at runtime

Unfortunately, while Visual Studio has many solutions for ensuring that
your managed dependent DLLs get shipped alongside your project, it's got
absolutely nothing to ensure your native P/Invoke DLLs get shipped.

The easiest, most foolproof method to ensure that a managed DLL has its
native dependency regardless of how it is built or shipped is to embed
it as a resource and extract it before use. This patch ensures that
LibGit2Sharp will always have the corresponding version of git2.dll.