#353 Have problems with redo in particular, but undo is not functional yet. Committing these changes as a checkpoint only, because I won't work on this for a week.