Use the much more awesome pygit2.

It is really much more awesome.

With the old code we would generate exceptions if:

* The user pushed a git tag.
* The user pushed a commit signed with a gpg key.

Furthermore, it was just mistakenly written and it would only publish
one fedmsg even if multiple commits were pushed (it would only broadcast
about the latest commit).  This code actually publishes messages for
each commit on each branch.

Fixes #309.