[WIP] The Hardest Buffer to Buffer

Adds `GTDiffDelta` constructors based on blobs and buffers, so you don't need a tree with files in it just to construct a diff.

**To do:**

 - [ ] Unit tests
This scares me a bit. Are we sure we can't end up with a diff dependent on a dangling repository?