Undo Redo added for command pattern