Avoid touching the geolocation object until needed

IE9 leaks when `navigator.geolocation` is accessed (see #461).  The goal of this change is to avoid that leak in builds that include the Geolocate control but do not use it.
Merge pull request #461 from tschaub/ie9-leaks

OpenLayers-2.12-rc2 + jQuery-1.7.2 Memory leak in Internet Explorer 9 (p=@tschaub,r=@marcjansen,@elemoine)
Simplifying layer visibility handling

Instead of adding and removing the Google container, we just toggle
style.display. This also removes the unused rendered and displayed
properties of the cache.
Merge pull request #925 from ahocevar/google-container

Google Maps rendering bug on fresh reload. r=@kevbradwick (fix #925)