title: Instance was deallocated while key value observers were still registered with it
body: <p>I've got a UITableView.</p>
  
  <p>Here I got different cell's. Each cell has a model. With KVO and NotificationCenter the cell listen to the model for changes. When I leave the ViewController I get this error:</p>
  
  <pre><code>An instance 0x109564200 of class Model was deallocated while key value observers were still registered with it. 
  Observation info was leaked, and may even become mistakenly attached to some other object. 
  Set a breakpoint on NSKVODeallocateBreak to stop here in the debugger. Here's the current observation info:
  &lt;NSKeyValueObservationInfo 0x109429cc0&gt; (
  &lt;NSKeyValueObservance 0x109429c50: Observer: 0x10942d1c0, Key path: name, Options: &lt;New: NO, Old: NO, Prior: NO&gt; Context: 0x0, Property: 0x10968fa00&gt;
  )
  </code></pre>
  
  <p>In the cell I do this when the model property is set/changed:</p>
  
  <pre><code>[_model addObserver:self
           forKeyPath:@"name"
              options:0
              context:nil];
  
  [[NSNotificationCenter defaultCenter] addObserver:self
                                           selector:@selector(modelIsInvalid:)
                                               name:@"modelIsInvalid"
                                             object:_model];
  </code></pre>
  
  <p>Then in the cell's dealloc:</p>
  
  <pre><code>- (void)dealloc
  {
      NSLog(@"DEALLOC CELL");
      [[NSNotificationCenter defaultCenter] removeObserver:self];
      [_model removeObserver:self forKeyPath:@"name"];
  }
  </code></pre>
  
  <p>In the model I also check when it get's deallocated:</p>
  
  <pre><code>- (void)dealloc
  {
      NSLog(@"DEALLOC MODEL");
  }
  </code></pre>
  
  <p>All cell's are deallocated before all the models, but still I get this error. Also I'm not sure how to set the breakpoint mentioned in the error.</p>