going with undo/redo mechanics, hopefully nothing silly happens later!