* Work in progress, some tests fail
* adding tests
* missing header
* moved close_to to detail, added constness, replaced predicates from <functional> with custom ones, new code does not rely on partial template specialization
* renamed predicates and removed close_to predicate
* removing now superfluous headers
* unpatching the fix to put in a separate PR
* move predicate to first argument
* call op and anti_op as normal methods