A reusable class that combines UITableViewDataSource and NSFetchedResultsControllerDelegate