I read about your library in your recent post: https://pragmaticobjects.com/chapters/004_object_equivalence.html The usage and features of OO-Atom are not well-documented or easy to discover. How does OO-Atom provide Equality and Hashcode features for Atoms?