javadocs
refactoring and java docs