I think we can probably just use blobs and locatives to keep things simple, without needing to involve finalizers or similar tricks. This library is pretty good about leaving memory management up to the client, and they provide an object for indirection (the git_buf) when that's not possible. I'll have a look when I get a chunk of spare time.
Thank you Kristian for digging into this, it is very helpful. Evan
