Track state inside ensure blocks

When doing a next / break inside ensure blocks we need to make sure to
pop off the extra optional exception that could have been raised.

Fixes https://github.com/rubinius/rubinius/issues/1941