[relate][overlaps][crosses] Add unified way to implement the default dispatch of spatial relation

Add relate_base derived from not_implemented<> if necessary for the purpose of support_status check.
This class is derived from not_implemented<> if either StaticMaskTrait or detail_dispatch::relate::relate is derived from nyi::not_implemented_tag.
Use this technique in crosses() and overlaps().
[convex_hull] fix uninitialized pointers in ConvexHullStrategy concept check
Merge pull request #8 from mkaravel/feature/setops

[test][algorithms] modify Jamfile to work with unit tests for P/P and L/L set ops
[doc][index] Add info about the query iterators - k-NN order and invalidation
[test][index] add a check for the order of resulting Values of a k-NN query iterator
[within][covered_by] Add the support for Areal geometries for within() and all OGC geometries for covered_by().

Also the specializations for Multi Geometries was moved from geometry/multi/algorithms to geometry/algorithms. They're now in one place.
The default strategies are point_in_point for PointLike, winding<> for PointLike/AnyGeometry, relate for L/L, L/A and A/A.
Point/MultiGeometry version now uses point_in_geometry directly which implements the correct behavior - this fixes the wrong handling of MultiLinestrings (boundary point of a Linestring may not be a boundary point of a MultiLinestring which contains it).
[within][covered_by] enable default relate strategy for cases other than P/P and P/* as far as CS is the same
Merge branch 'feature/relate' into develop
[geometry] fix invalid #include
[test][touches] remove invalid #include in multi_touches test
Merge pull request #9 from mkaravel/feature/setops

[set ops][follow L/L] fix bug appearing in regression tests