WARNING: THIS CLASS IS A WORK IN PROGRESS. SOME FEATURE ARE NOT
YET IMPLEMENTED AND SOME FEATURE MAY APPEAR/DISAPPEAR.
A UNICODE_STRING is a resizable string written with unicode values.
From unicode.org: "Unicode provides a unique number for every
no matter what the platform,
no matter what the program,
no matter what the language.
WARNING: a grapheme may be described with many code.
grapheme may be defined as "user character". Angstrom sign is
one grapheme but may be defined using (LETTER A + COMBINING RING).
Unicode strings may be acceded in two ways:
- low-level (code by code)
- high-level (grapheme by grapheme)
Unless otherwise specified, all functions unit is the unicode number.