added uml and interaction diagrams