Override self.request with the new request when redirecting

This PR overrides `self._request` in the Plugin when using Plugin.redirect. This fixes a bug where when the request is redirected, although the new path will be invoked, the plugin.request value will be the original request and all query parameters from the redirect will not be set.

/cc @jbeluch