Improve naming and javadocs