Fix bad range parsing.

@fw42 

This should fix a bug @jules2689 discovered in the parsing of ranges like `(young..old)` with the new parser.
It lexes a `..` as a separate token from `.`, which it is. This should stop the parser from looking for the field in a field lookup when it encounters `young.`

Also includes a regression test.