Added Javadoc comments

I've added javadoc comments to the source code and new package-level comments.