Update the gitignore list
Add javadoc to some of the classes
Add the doc target which generates the javadoc