[bug] onig.py: onig_error_code_to_str() didn't work on 64-bit OS

onig_error_code_to_str() didn't work on 64-bit OS because the type of
'code' parameter was wrong. (since 5.11.0)
[bug] SEGV may occur in onig_error_code_to_str()

When a wrong error code is passed to onig_error_code_to_str(),
onig_error_code_to_format() may return NULL and it cause SEGV in
onigenc_str_bytelen_null(). Add NULL check.
testpy.py: add tests for UTF-32BE/LE
add more tests
comment out unused codes
update HISTORY