Make RemoteCollection.Create generate a default fetch RefSpec for the remote
Make RemoteCollection.Create accept a specified fetch RefSpec
Add missing documentation to Configuration.Set()
Make Configuration.Delete() able to target global and system configuration files

Fix #161
Remove BOM and cleanup .gitattributes

There is no need to call out Lib and other directories specifically in here
because we have .gitattributes files in those dirs.
Rename LibGit2Exception to LibGit2SharpException
Use CSharp friendly names for libgit2 error types and codes
Make Repo.Diff.Compare() accept a list of paths to inspect

Partially fix #167
Remove outdated TODOs
Make repo.Reset() defaults to HEAD when no shaOrReferenceName is passed
Add Oid and OldOid properties to TreeEntryChanges type
Add repo.Reset() overload to allow replacing of index entries with commit entries

Fix #165
Refactor repo.Index.Unstage() implementation to leverage repo.Reset()
Add Utf8Marshaler.FromManaged() and FromNative()
Add FilePathMarshaler.FromManaged() and FromNative()
Manually marshal file path in status callback
Build XML documentation file for Debug build to see warnings
Fix XML comment warnings
Make ContentChanges.IsBinaryDelta() an extension method
Extract Changes base class from ContentChanges

TreeEntryChanges inherited from ContentChanges, but they're really not the same thing.