A lot of JAVADOC and synchronization updates (reentrant locks instead of synchronized methods)