Also is_simple, is_valid and extensions like dissolve and nsphere relops.
Add umbrella strategies:
- relate: used in setops, relops, buffer, is_xxx, dissolve, etc.
- index: used in rtree
- io: used in wkt read/write and extensions/shapefile
Replace `point_box_by_side` agnostic strategy with CS-specific strategies.
Fix passing of strategies (no defaults when user-defined strategy is
passed) in places like buffer and distance.
Alter tests accordingly.
is_collinear for the first endpoint of L is now unified and is always equal to FALSE.
Add tests of is_collinear. It is tested by passing 4th and 5th char in the expected turn string (= means collinear, + means non-collinear), e.g. "mxi=+" for L/L means that L1 ends in this IP and was collinear before meeting the Point, L2 is going "inside" intersection and wasn't collinear before.
Replace method_and_operation_replacer with turn_transformer.