Expanded Javadoc documentation, code cleanup and organization