This is a convenience singleton wrapper of CLLocationManager, that can automatically stop when we get the desired accuracy or cache the last position for fast retrieval.