Interface Abelian

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.