describe: Do not crash if pass null option to git_describe_commit()
describe: Initialize options for git_describe_format() if null
describe: add example
p_lstat win32: don't canonicalize volume mounts

A reparse point that is an IO_REPARSE_TAG_MOUNT_POINT could be
a junction or an actual filesystem mount point.  (Who knew?)
If it's the latter, its reparse point will report the actual
volume information \??\Volume{GUID}\ and we should not attempt
to dereference that further, instead readlink should report
EINVAL since it's not a symlink / junction and its original
path was canonical.

Yes, really.
is_empty_dir (wi32): cope with empty mount points

FindFirstFile will fail with INVALID_HANDLE_VALUE if there are no
children to the given path, which can happen if the given path is a
file (and obviously has no children) or if the given path is an empty
mount point.  (Most directories have at least directory entries '.'
and '..', but ridiculously another volume mounted in another drive
letter's path space do not, and thus have nothing to enumerate.)

If FindFirstFile fails, check if this is a directory-like thing
(a mount point).
Introduce failing test for conflict filtering in index
Ensure filters (i.e. CRLF) are applied when checking out conflict content
Don't copy buffer in checkout unless needed
Merge pull request #2616 from ethomson/index_crlf

Apply filters when writing index
Merge pull request #2615 from ethomson/mount_points

Mount points
Merge pull request #2609 from linquize/describe-opts

Handle describe options better
PROJECTS: remove two completed tasks
Update some documentation
tree-cache: correct the entry_count calculation

The entry_count field is the amount of index entries covered by a
particular cache entry, that is how many files are there (recursively)
under a particular directory.

The current code that attemps to do this is severely defincient and is
trying to count the amount of children, which always comes up to zero.

We don't even need to recount, since we have the information during the
cache creation. We can take that number and keep it, as we only ever
invalidate or replace.
Merge pull request #2634 from libgit2/cmn/tree-cache-count

tree-cache: correct the entry_count calculation
Remote paths: canonicalize UNC paths on Win32

Git for Windows will handle UNC paths only when in forward-slash
format, eg "//server/path".  When given a UNC path as a remote,
rewrite standard format ("\\server\path") into this ridiculous
format.
Merge pull request #2619 from ethomson/remotes_with_unc

Remote paths: canonicalize UNC paths on Win32
Merge pull request #2617 from linquize/describe-example

describe: add example
Add a test to make sure a new snapshot has the new value.
Change the length of the file so that the change is picked up.