Add onhashchange support.
Convert normalized paths to use :id.