Added javadoc comments to all classes