tested undo/redo of exil-env:mod-fact
implemented with-saved-slots macro, that expands into with-undo
  creating undo function that saves given slots and resets them back
  when called
redo function is now run with disabled undo, so that actions called
  by the redo function don't appear on undo-stack by themselves, only
  the redone action itself gets there
refactored undo tests