Use leaflet-hash
Redirect lat/lon/zoom query params to hash
Prefer hash to other methods of determining location
Refactor URL generating methods
zoomPrecision doesn't need to be higher-order
Generate hash-based permalinks
Update hash on P2 and iD edit pages and throttle
Include layers in hash
Make the multi-get calls throw 400 errors on invalid input

Also refactor ways and relations to use the same structure as nodes
Add functional tests for nodes/ways/relations API methods
Merge remote-tracking branch 'osmlab/hash'
Update user location setting for zoomPrecision change
Update short link integration tests for hash links