PatchStats

This adds a new kind of diff, created by using `repo.Diff.Compare<PatchStats>()`. It uses the native `git_patch_line_stats` to efficiently get diffstat-like information (only lines added and removed).