Added UMLet diagram. Added documentation. Added nameFor() method to AbstractNamed.