[WIP] Add comparison predicate evaluators

We need to have *good* names to distinguish between `eql`, `==` and `equal`. And especially the inverses.

`!=` is NOT the strict inverse of `eql?`. As `!=` suffers from the same coercion semantics like `==`.

So I think the `NEQ` class is better named `NEQL`.