Put initialization of GPS broadcast reception in onStart()

It's removed in onStop() so should be initiated in onStart().
Without this change, if the user left the map and came back, they
would no longer get GPS updates.
Use the service's last location if available and the center hasn't been set in other ways
Merge pull request #730 from keverets/avoid-ocean

Use the service's last location if available and the center hasn't been set in other ways
Merge pull request #725 from keverets/map-resume

Put initialization of GPS broadcast reception in onStart()
Break up positionMapAt() so that setUserPositionAt() can happen independently
Listen for user moving map, and don't recenter from GPS until they touch "Refresh"
Remove mMap.invalidate() calls
Merge pull request #726 from keverets/pan-mode

Pan mode