Make Diff.Compare able to expose type changes

Fix #196
Prevent test cleanup from hiding potential test failure
Make repo.Fetch() accept a Credentials instance
Remove trailing whitespaces.
Remove leading tabs.
Fix filemode for source files.
Add missing Network property to IRepository interface
Introduce Repository.Network.Remotes
Mark Repository.Remotes obsolete
better safe strong Ensure
Add RawContentStream.

Holds the rawcontent objectsafe wrapper.
Teach Push to accept Credentials
Fix some issues pinpointed by Code Analysis
posh-git-ify TreeChanges.DebuggerDisplay
Add RepositoryStatus & StatusEntry DebuggerDisplay
Update libgit2 binaries to 40a6051

https://github.com/libgit2/libgit2/compare/5f9f69d...40a6051
Make LambdaEqualityHelper.Equals symmetric when exactly one argument is null
Remove the empty implementation of SafeHandleBase.Dispose (overrides SafeHandle.Dispose) from release builds
Teach Network to list references on a remote
Enhance repo.Refs.IsValidName test coverage