Bufferlist design attempt