start adding javadoc and comments