Add undo/redo shortcuts, refactor history.
Added keyboard shortcuts, and patched a number of small bugs that were
interfering with undo/redo working properly.
Commands now make copies of the active selection, TranslateCommands
now accept an outside source of oldTransforms, and the EditCommands
update the path of the selection.