added Relation ADD/REMOVE/MOVE with undo/redo support