Undo with Object.observe