Stateful URLs

TLDR; Improves state persistence using the URL hash fragment.

We already have a `#52.40493,5.14160,9`-style location parameter.

This PR allows multiple parameters via a HashSyncHelper factory with a setHash and getHash method. (setHash sets or updates if a key exists).
New URLs look like `#location=52.36830,4.71745,15&bl=2` where `location` contains the lat/lon/zoom and `bl` contains the ID of the current backgroundlayer.

Changing the URL reflects a change in application state and vice-versa. (makes 'stateful URL sharing' possible)

![screenshot from 2014-05-27 11 45 12](https://cloud.githubusercontent.com/assets/7193/3089809/a2332d04-e583-11e3-99d2-ec25e122c99d.png)