Feature/disjoint

1. Add implementation for `disjoint` for the combinations:
   * point/multipoint
   * multipoint/multipoint
   * multipoint/segment
   * multipoint/box

2. Add test cases for the combinations above

3. Update support status table for `disjoint`
Currently this is O(N^2) right?

A side note/thought. check_iterator_range<> doesn't look convenient and is not very readable.
A free function could be a replacement, e.g. for_each_point_if(first, last, predicate) would have sense as a function iterating over Points for arbitrary geometry. However in this case std::find_if() could be used.