Added javadoc documentation of code base