A simple Undo Manager