String#split RegExp separators, general improvements to String

- Adds partial support for RegExp separators. Splicing is not yet in,
  and there seem to be issues with some patterns (see the FIXMEs)
- Fixes incorrect behavior with String#split when separator is matched
  at last segment.
- More work on edge cases with Infinity and other large numbers.