[geometry] added relate() test implementation for Point-Geometry, Geometry-Point and Linestring-Linestring. The least one is not finished yet.
[geometry] relate code divided into several files
[geometry] added test file for relate(), fixed error in linear_linear, added tag-dispatched detail::relate()
[geometry] fixed some errors in relate(Ls, Ls): checked terminal points of both linestrings, treated touch with x/x as ii
[geometry] handled more cases in relate(Ls, Ls)
[geometry] in relate() called dispatch::get_turns instead of higher level one to avoid geometries switching, added generation of SVGs for some special cases
[geometry] added self-turns output to 1-geometry to_svg()
[geometry] added relate() test
added generation of IP for the first point of a Linestring - c+c/c, c+i/u or c+u/i
[geometry] handled IP for the first point of a LS when IP is equal to the second point of the first segment of the other LS to avoid generation of 2 IPs for the same point
[geometry] handled IP on the last point of LS for equal and collinear case, for the first point method may now be set to equal or collinear
[geometry] begined the new implementation of handling of first and last LS point in get_turns(), for now considered cases when both LSs starts on the same segment
small changes of methods/operations and comments to generation of turns for the first points
added preliminary version of the new algo for the first point of P LS
overlay:: equal<> and collinear<> used to calculate the operations for the first point of P LS in adequate cases
get_turns() for endpoints L/L started from the beginning, added copyrights info, added comments regarding segment intersection results analysis
fixed comments with the segments intersection result analysis
handled all endpoints, for now method is not set, IPs may be duplicated and invalid value is returned from handle_first_last()
handled some of the duplicated IPs
most of the duplicated endpoints handled