"Ascii" StringLiteral instances are actually narrow strings
that are UTF-8 encoded and do not have an encoding prefix.
(UTF8 StringLiteral are also UTF-8 encoded strings, but with
the u8 prefix.
To avoid possible confusion both with actuall ASCII strings,
and with future works extending the set of literal encodings
supported by clang, this rename StringLiteral::isAscii() to
isOrdinary(), matching C++ standard terminology.
I like the idea of renaming both of these -- isASCII() can be a bit confusing with containsNonAscii() as well. However, instead of "ordinary", would it make more sense to go with "narrow" as the term of art? That also goes nicely with the use of "wide" in this interface.