Pulled geolocation code out of camera.js
Unit tests for geolocation module
Docs and tidy