Better top-level error handling from JITed code.
Fixes plus partial refactor of SelectExecutor.

* Eliminate fds array, since we already have an object and fields.
  First step to reducing allocation.
* Attach list of fds to key to allow both read and write to reg.
* Update (rather than replace) key ops with additional operations.
* Use SelectorPool to acquire/release selectors.
* Misc cleanup of dead code.

Fixes #2102
Fixes #2106
Never return a closed selector to the pool.
Silence warnings by aliasing char version of isJavaIdentifier*.
Pass enumerator method name through for chars, codepoints, bytes.

Eliminates spurious warnings when doing e.g. str.chars.any? {}.
Mark necessary perf improvement as a FIXME.