Structure changes and more javadoc comments