Add undo and redo to the context menu and make cut/copy/paste undoable/redoable.
Implement undo/redo for dragging, not yet fully functional