Updated javadocs for public classes and interfaces