Paging and migration recovery

This includes both the paging fetched results controller and an update that allows you to chose how to handle a failed migration. Right now if your migration fails, the app explodes, this let's it fail gracefully by wiping the SQL database and recreating it with the current data model. Optionally, the user can also be notified that their data was wiped.