Add Repository.ahead_behind()

This lets us ask how many diverging commits each side of two histories have.

Unfortunately the libgit2 function is currently buggy, so we might want to avoid merging until we can create some tests which are actually accurate.