undo/redo with historian