#19 finished uml diagrams