Changes from #261 to get CMake builds.

We need to build the vendored version of libgit2 using libz and libssl
so that we have SSL and SSH.
Modify the submodule to use HTTP vs. HTTPS.

This is because our corporate HTTPS proxy can be a pain regarding the
MITM certificates.
Modify libgit2 to pull submodule from our appliance.
Add diff.stat and patch.stat APIs
Fix compiler warnings

On my system, size_t and int cannot be used interchangably.
Fix diff stat for unmodified / untracked files

Since libgit2 allows you to generate a diff that includes
unmodified, untracked, and ignored files, we have to be careful
to skip over those when calculating diff stats.

This adds tests for this case and also a test for the base case
of simulating "git diff <sha>" that needs to use a merged diff
between the tree, the index, and the working directory.  That case
did not seem to be covered by the existing tests and it is an
interesting one because the expected results can come from running
Git on the command line.
Clean up Rugged::Diff::Patch line stats APIs

This removes the #additions, #deletions, and #context APIs from
the patch object in favor of the #stat API, plus it adds a new
API Rugged::Diff::Patch#lines that yields the total lines in the
whole patch including context.  Using that, the context value is
still available via `patch.lines - patch.changes`

The tests are updated to cover all these APIs.
Merge pull request #266 from libgit2/diff-stat

Diff stat API
Remove a 1.8 <> 1.9 shim.
Adjust to libgit2 changes
Add 2.1.0 to .travis.yml

Ruby 2.1.0-preview1 was released today. Even though it'll still take
some time until a final version is released, we can already make sure
that rugged will be compliant from day one.
Merge pull request #267 from libgit2/arthur/add-2.1-to-travis

Add 2.1.0 to .travis.yml
Revert "Add 2.1.0 to .travis.yml"

This reverts commit 50236d641c4ba7760c3f34bc2fe3ff9ef141f789.
tree: Return "commit" as tree entry type
Merge remote-tracking branch 'upstream/development' into development