feature/projected_point

The initial commits of this PR adds a distance::detail::projected_point_ax strategy returning 2-component Point/Segment distance.

The intention is to use it as a parameter of the Douglas-Peucked simplify() strategy in order to remove unneeded Points based on the parallel and perpendicular distances of the projected Point instead of the default Point/Segment distance.

The ATD (along track distance) is parallel to the Segment and is a distance between Point projected into a line defined by a Segment and the nearest Segment's endpoint. If the projected Point intersects the Segment the ATD is equal to 0.

The XTD (cross track distance) is perpendicular to the Segment and is a distance between input Point and its projection.


Nice picture. 

I don't see how you can get this to work correctly in a simplify-strategy. IMO (intuitively but also see my drawing) there should be a distinction between p1 and p2, one can be considered as included, the other should not. If they have the same distance - it will not work.

See also what I wrote in my original design:
*I would like to see in that strategy that if b exceeds the line (a,c), so let's say, is lying left of the normal of the last segment of (a-c) (see below), it is either excluded or uses a larger distance to be included, or a distance can be specifyd for how far from the normal*