UML and OOGUI update

updated the UMLs for the classes and OOGUI is updated with the right
logic for the different cases.