Use (0...0) as sentinel for empty text ranges

This has the virtue that range.count == 0, which allows for slightly
more sane checking of the ranges in downstream code that uses those
ranges.