3.0 between expression

Implements a new `between()` method in the `QueryExpression` object and cleans up the `Comparison` object as some of its code was rather confusing.
Extra the. I will do the docs fixes when I get to a real computer.