add built-in replacements for `iswprint(3)` and `wcwidth(3)`
in
b075ddd, we added an `iswprint` check to prevent untrusted input
from garbling the terminal. `iswprint` is locale-dependent, so if the
caller did not `setlocale` to a UTF-8 `LC_CTYPE`, the check would
fail. this affected several library users.
termbox has always had built-in support for converting between UTF-8
and 32-bit codepoints (i.e., replacements for `wcrtomb(3)` and
`mbrtowc(3)`). this patch adds built-in support for `iswprint` and
`wcwidth` as well, which makes the entire library Unicode compatible
independent of locale.
a compile-time option to use the libc versions is supported.