I think this should be in the `comparable.py` file. I think that this might be too tightly coupled to the cell data structure itself, and the stuff in this file should be general-purpose.