I might just be sleepy-eyed but is the doc correct here? i.e. Aren't both start and end inclusive?
/** Returns true if the given range lies entirely inside this range.
When making this comparison, the start value is considered to be inclusive,
and the end of the range exclusive.
bool contains (Range other) const noexcept
return start <= other.start && end >= other.end;