Implement BufferManager
Also, apply things learned while writing BufferManager to the similar NotePlayHandleManager