Replace FCModelDatabaseQueueOperation with NSBlockOperation

NSBlockOperation offers the same functionality as
FCModelDatabaseQueueOperation. Less code is happier code!
Add database queue method to run blocks asynchronously

I find myself using a pattern like this to prevent the database
blocking my main thread:

```obj-c
FCModelDatabaseQueue *databaseQueue = …
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT
, 0), ^{
    [databaseQueue inDatabase:^(FMDatabase *database) {
        // queries & updates

      [[NSOperationQueue mainQueue] addOperationWithBlock:^{
          // update the UI
      }];
    }];
});
```

This is a little wasteful though, the global queue's worker thread is
now blocked waiting for the database queue's worker thread to return
control.

With an async method to `FCModelDatabaseQueue` the same example looks
like this:

```obj-c
    FCModelDatabaseQueue *databaseQueue = …
    [databaseQueue inDatabaseAsync:^(FMDatabase *database) {
        // queries & updates

        [[NSOperationQueue mainQueue] addOperationWithBlock:^{
            // update the UI
        }];
    }];
```
Merge pull request #90 from randomsequence/master

Replace FCModelDatabaseQueueOperation with NSBlockOperation, add async block call
New internal notification to ensure FCModelCachedObjects expire before your app responds to FCModel change notifications
Merge commit 'a2476d86d1427ace704b69072a58904b86a83182'

* commit 'a2476d86d1427ace704b69072a58904b86a83182':
  New internal notification to ensure FCModelCachedObjects expire before your app responds to FCModel change notifications
  Add database queue method to run blocks asynchronously
  Replace FCModelDatabaseQueueOperation with NSBlockOperation