Allow Buffer to wrap arbitrary pointers

Closes #13