Use func_tools total ordering. Beef up caching for Specie.