Describe the use of CoreData, CoreLocation and MapKit