CDK-501: Remove inf from unbounded ranges.

This implements Tom's suggestion to use the empty string to signal a
missing bound rather than "inf". This only collides with String bounds,
where the empty string is a valid bound. But, the only behavioral
difference is that the empty string itself is included in the range and
it is no longer possible to express a from-after in terms of the empty
string or the range upTo("").