reflect all folder type attribute values in Java layer

Change from representing folder type as one of four integer values to representing folder type as exactly the String type attribute on the underlying folder XML element.  This makes novel type values available through the Java API.
trivial JavaDoc cleanup
add richer toString() on folder and node descriptions
add Apereo license header
switch to differentiating favorites by @type=“favorites”

Switch to identifying the folder containing favorites by its type attribute rather than by its name.
Pulls favorites functionality into a Helper class.
Changes nomenclature to “collections” of favorites rather than “tabs”.