Undo/Redo stack. Multiple cursors. BufferChangedCallback