Fix undo/redo.
Fix undo/redo.

 * Was overcomplicating things by trying to record interim states in a
group state change. They are never needed, so just compress them into
one state change, makes undo and redo a lot simpler.

pgregory/wetracker,pgregory/wetracker