- Strings should cache wether they contain multibyte utf8 characters or not. - Also cache the amount of utf8 codepoints in the string, as right now this value needs to be recalculated each time the `length` field gets accessed. - Strings that do not contain multibyte utf8 codepoints can benefit from fast O(1) index access. - For very big strings, an index lookup table could be constructed to cache certain codepoint offsets in order to speed up those accesses.
lengthfield gets accessed.