- Rewrite the router code to use the History API instead of the hashchange event when possible.
- Abstract the differences between pushState method and hashchange method in OOjs Router.
- Change signature of navigate to support options.replace = true:
- Remove router.back() hack, as this should be possible with the new "history replace" method.
Note: this is unrelated to the MediaWiki pages' history.