refactor

pulled functionality into seperate modules. hash updates the url in your browser, and will set up the intial view based on the hash url. this accounts for center lon lat position, zoom level, and current query string being used to filter  the map. filter got a debounce, since hash has it going on. added a changelog.