Decode the utf8_string and append it in unicode_string.
After this call the first_error attribute may be non Void
to explain the error encountered during the utf8_string
decoding.
In case of error, the first_error_index is also used to
indicate the position of the first error into the original
utf8_string, first_error_character indicate the
position of the first error character added in unicode_string.