Refactor SSFilterableFetchedResultsController filter updates.

Currently, whenever there's an change in the filter in a SSFilterableFetchedResultsController, the entire table is deleted and the new results are filtered.

With this change, only objects that do not pass the new filter are deleted, objects that pass both filters are moved if necessary, and objects that only pass the new filter (but not the old one) are inserted.

Thanks for all your hard work on this project! It seriously helped my understanding and use of CoreData.