Undo redo improvements and bug fixes

-Undo redo working for new diagram
-Undo redo working for new project, save project, and open project
-Fixed bug for open project
-Fixed bug where performing an undo/redo causes the moved element to be red
-Fixed bug where undo -> move element -> undo causes a blank diagram
-Fixed bug where a dragged relationship link was not being retained during the clone for an undo/redo