ASCII-specific ctype-like functions

The `IS*` and `TO*` macros aren't prefixed (other libraries like GNU Readline define macros with the same name) and evaluate their argument multiple times. They also increase mruby's size by a bit, because of the `ISASCII` check.

I'll create a separate PR with some additional (behavioral) changes to `parse.y` once this is merged. This PR shouldn't change any current behavior (of Ruby code).