Creating a new url has the benefit that all framework params are
still there. `$this->url()` however returns a url that's already
mangled and parameter preservation does not work for framework
params.
This is not quite the correct fix. But the entire parameter
handling here is way too convoluted.