beginnings of undo

probably doesn't work