refactor path name
added javadocs
another round of documentation (work in progress)