added javadoc to classes and methods