Undo/Redo—initial implementation

WYMeditor's undo is, in some cases, not accurate.
Another one that doesn't use `manipulationTestHelper`.