mitigate some C++20 char8_t breakages
C++20 adds a type-incompatible char8_t and changes the type of u8"literals" to use that. This breaks code that mixes u8 string literals with const char *, std::string, std::string_view, icu::StringPiece, icu::ByteSink, and much else.
Make u8"literals" easy to work with StringPiece and ByteSink and maybe more.
FYI Link to approved API proposal: