smarter undo mechanic -- dragging to any already selected cell will undo to that point