This should just be done in `session.js`, there's no special reason to do it here.

Also we it will have to be unregistered like:

```js
session.on("close", function () {
  window.removeEventListener("hashchange", hashChange, false);
});
```