Buffer implementation for makedrive

We should reuse the lib/diff code here too, and allow a processDiffFn to get passed in, where you just return data.