I want to build an application that can set up a set amount of geo-fenced square regions across town, I know I could achieve this by enabling location in the background, and
You should look at the startMonitoringForRegion:desiredAccuracy: method on CLLocationManager.
CLLocationManager