adding javadoc and junits to knock out todos