Don't lose PATH_INFO in ShowExceptions middleware

Leave `PATH_INFO` unchanged in `ShowExceptions` middleware, so it is
available to any custom exceptions_app.

Previously `ActionDispatch::ShowExceptions` overwrote `PATH_INFO` with
the status code for the exception defined in `ExceptionWrapper`, so the
path the user was visiting when an exception occurred was not available
to any custom exceptions_app.

`PATH_INFO` now remains unchanged, and `PublicExceptions` uses the
status code of the wrapped exception to determine which exception
template to serve, instead of the path.