Undo/redo should now be completely reliable