Adding javadoc comments & minor changes

the finishing touches