Add support for simple non-equi joins

You can accumulate the comparison expressions and then call `ExpressionUtils.and(...)`, which will build the logical binary expression tree for you.