completed junit tests and added uml and javadocs