Add #to_io and #reopen methods to `StdErrSplitter`

These changes are required to support capturing the `$stderr` stream in a tempfile rather than a `StringIO`. See https://github.com/rspec/rspec-expectations/pull/700 for the rationale.
It's weird that `StringIO` doesn't define this :(.

I think that an alternate (and potentially better) way to fix this is to update the `method_missing` definition above, so that it checks `@output_tracker.respond_to?` before sending the message to `@output_tracker`, but always unconditionally sends the message to `@orig_stderr`.  I think that would fix the `to_io` problem and also fix any similar problems from messages that `@orig_stderr` responds to but that `@output_tracker` does not.  There are quite a few of them:

``` irb
irb(main):008:0> $stderr.methods - StringIO.new.methods
=> [:to_i, :to_io, :fdatasync, :close_on_exec?, :close_on_exec=, :binmode?, :sysseek, :advise, :ioctl, :autoclose?, :autoclose=, :stat]
```