Fix history location double encode

While redirecting using `transition.redirect(to, params, query)` with a query param, it will double encode the query params. E.g.

```
transition.redirect("foo", null, {next: "/bar"})
// ..leads to
// /foo%3Fnext%3D%252Fbar
// ..but should redirect to instead
// /foo?next=%2Fbar
```

With this fix it should work, although I'm not really sure what implications this change has.