MapRoute serializes and deserializes a Map to and from window.location.hash. It is like using url parameters with pairs of key and value. At the start of the route is only a # instead of ?.
Deserializes the window.location.hash to the given type T after the hashchange-event is fired.
Serializes a given object of type T to String for setting it to the window.location.hash