more javadocs and clean up