Undo/Redo—initial implementation

WYMeditor's undo is, in some cases, not accurate.
This is clever, but I think `history.forward()` and `history.backward()` might be easier to read and understand