added more javadoc to important classes