TextRange: use a LongRange as a byte range instead of a Range<Long>
IntRange: introduce a .asGuavaRange() method

We still want to use Guava's RangeMap instead of writing our own, which would be
a waste.
Use IntRange instead of Range<Integer> in TextRange and subsequences

The big advantage is of course that .contains() is now cheap in LargeText, and
this eliminates the most consuming aspect of the program and accelerates it at
the same time (~40% speed improvement -- that is far from being negligible).