Assert invalid UTF-8 sequences in UTF8Chars

I expect that GLib will produce some bad UTF-8 and have APIs
wrongly annotated as UTF-8 (or, rather, un-annotated as type
utf8 is assigned to strings by default). The debug assertions
should help find and fix such cases.
Slightly more optimization-friendly code for UTF8Chars