> In the unit test, I would like to see the variant defined as variant<point, box, segment>

Just to be sure, is distance implemented for all the combinations of  these geometries and with the default and say the haversine strategies ? If not, what combinations are supposed to fail to compile ?