Changed UndoController to UndoRedoController. Added support for Redo in
this controller, and updated all other classes to reflect the change.
Added Redo functionality to UndoController. Updated other classes to
reflect the change.