Refactored comparison functors to reuse compare_functors.hpp classes