Tiny hashchange router inspired by express.js & page.js.