added detection & correction of multi-byte utf8 characters that are split up (when chunked in stream buffers) before the character boundary is met, this commit passes existing tests and new tests written for this use case