1. Add a control to allow the user to change the accuracy setting for the sensor, and notice how the output changes when moving about using different settings.

2. The app now has database access code in several view controllers. To support a cleaner design, add a database access class that controls all access to Core Data and provides useful methods and properties to the rest of the app.

3. Turn off the user’s permission to access location for the App (in the Simulator, go to Settings > Privacy > Location). Run the app again and observe what happens. Is this appropriate behavior? How could it be improved?

4. What would happen if the code in Listing 13.10 was placed in viewDidLoad instead of viewWillAppear? (Check MapPoint.swift)

5. Change the text displayed on the pin to include the City for the contact.

6. Change the cell layout to use the other two styles.

7. Expand the settings screen to allow for specifying two sort fields. Then have the sorting be done by first one and then the other field.

8. Choose different fields from the Contact class to display in the table.

9. Change the display in the table to look like this instead: Main label: Superman from Metropolis. Detail Label: Born on: April 18, 1938.

10. Change the app so when the user taps the + button to add a new Contact, the Contact screen is put into edit mode and the cursor placed in the first text field.