tag: add get_object() method

This maps to git_tag_peel().
Add blob.binary
Merge pull request #12 from xutao/pygit2:binary

Add blob.binary
tag: fix incorrect doc string wording for get_object()
commit: rename Commit._message to Commit.raw_message
signature: rename Signature._name/_email to Signature.raw_name/raw_email
Merge branch 'brodie/signature-raw-name-email' into bitbucket
Add patch.binary
Merge pull request #13 from xutao/pygit2:delta

Add patch.binary
Make pygit2.TreeBuilder() to fail (issue #265)
Add paths to diff.
Add paths to docs.
Merge pull request #14 from xutao/pygit2:diff_path

Add paths to diff.
Don't forget to remove the temporary directory in the config tests

When overriding the tear-down function, we must remember to call the
parent's function or we won't clean up the temporary directory for the
test.
test utils: implement a repo context manager

The current hierarchy of test cases that create and blow away test
repositories in the ``setUp`` and ``tearDown`` methods is inadequate
for testing scenarios where multiple repositories must be edited,
e.g.  testing push.

Extract the temporary repository behaviour into a context manager
class ``TemporaryRepository`` which can be used via the ``with``
keyword.  The context manager's ``__enter__` method returns creates
the specified repository in a temporary directory and returns its
path.  The temporary directory is removed in ``__exit__``.

Update the existing test case base classes to use the context
manager and invoke ``__enter__`` and ``__exit__`` in the ``setUp``
and ``tearDown`` methods respectively.

Finally, make some small tweaks to a handful of tests to get them
working under this new system.
implement push support

Implement push support via Remote.push which is called with a single
refspec and raises GitError (with an appropriate message where
possible) if the push fails.

Note that local push to non-bare repository is currently not
supported by libgit2.
add diff.size
using PyObject*  and PyLong_FromSize_t
for add diff.size
Merge pull request #15 from huanghuang/pygit2:size

给Diff加一个size属性