Attempts to use geolocation on load.

The built in IP geolocation can often be inaccurate - for example I'm in London, but it's currently saying I'm in Paris. When the page is refreshed, it forgets that you've already given permission to use HTML5 geolocation, and defaults back to using IP geolocation.

This PR attempts to get HTML5 geolocation on load, operating under the assumption that users are going to be ok getting an 'allow/deny' prompt the first time they visit the page, for more accurate location.