Fix crash when google maps is not installed
Big refactoring to pull map into its own class