Refactoring Sandboxing to be in RSpec support

rspec-core changes for https://github.com/rspec/rspec-core/issues/1798

rspec-support changes in https://github.com/rspec/rspec-support/pull/137
The reason the pending test was failing is because the `before(:all)` block is ran [here](https://github.com/rspec/rspec-core/blob/e95a65b1cf77dcccfb23d5cd19f2e4197cb474ee/lib/rspec/core/example_group.rb#L474) immediately after `group.run` is called [here](https://github.com/rspec/rspec-core/blob/e95a65b1cf77dcccfb23d5cd19f2e4197cb474ee/spec/rspec/core/example_spec.rb#L646).  The skip is applied to `RSpec.current_example` which is the [real spec](https://github.com/rspec/rspec-core/blob/e95a65b1cf77dcccfb23d5cd19f2e4197cb474ee/spec/rspec/core/example_spec.rb#L640), not the [intended specs](https://github.com/rspec/rspec-core/blob/e95a65b1cf77dcccfb23d5cd19f2e4197cb474ee/spec/rspec/core/example_spec.rb#L643-L644).

So even though the `example_spec` spec is running inside a sandbox, RSpec.current_example is not being cleared correctly.  Doing the set-nil-reset logic inside sandbox.rb causes other problems - it means that _as soon_ as execution reaches [here](https://github.com/rspec/rspec-core/blob/e95a65b1cf77dcccfb23d5cd19f2e4197cb474ee/lib/rspec/core/example.rb#L163) in an RSpec spec, we no longer have RSpec.current_example scoped.  So calls like `pending` no longer work [because](https://github.com/rspec/rspec-core/blob/e95a65b1cf77dcccfb23d5cd19f2e4197cb474ee/lib/rspec/core/pending.rb#L94) they depend on RSpec.current_example being set.

However, I took your recommendation (that I cannot find here on Github anymore, but I have in an email) to:

> * Store and restore the original value of RSpec.current_example around the sandbox like you are doing for config and world.
* On the new config object, define a before(:context) hook that clears it

This works because RSpec.current_example is still scoped inside the `it` block (which is the real spec) but if that spec tries to run _another_ example (using `group.run`) the before statement here will execute and clear the current_example.

`example.run` was not an issue because it [changes the current_example anyways](https://github.com/rspec/rspec-core/blob/e95a65b1cf77dcccfb23d5cd19f2e4197cb474ee/lib/rspec/core/example.rb#L154)

Thanks for the solution, and let me know what you think!