/** *
Contract Marker: Abelian
* Description: The Abelian "contract" requires a class to
* follow the related Std Java contracts for "equal()",
* "hashCode()", and "toString()" that ALL Java objects are
* supposed to follow but usually don't! These are detailed
* in Chapter 3 of "Effective Java" by Joshua Bloch.
* See that book for complete details and tutorial.