use the heuristics to instead score pairs of unionable geometries, instead of using templated compare functors. compare functors couldnt work anyway as they cant correctly order directional constraints or the angular or even length ones. still need to add angular measure