There is no way to attach a "listener" that will somehow call a function in your app every time someone edits a contact. But, there is a way to keep your app up-to-date:
Store a variable in NSUserDefaults that contains the date of the last time you imported new contacts from the phone.
When your app resumes from the background or opens for the first time, you should query the phone's contacts for all of the records that have been modified since the date of the last time you synced with the contacts. This way, you can only process the updated contacts without iterating over every saved contact every time.
You should be able to sort the person records by this property: kABPersonModificationDateProperty (reference)