Added UML diagrams