title: UITableview deallocation crashes with KVO error
body: <p>I am using UITableview for a chat inbox view and my navigation stack is like</p>
  
  <pre><code>(
      "&lt;VTDiscoverHome3ViewController: 0x7ff094758f00&gt;",
      "&lt;VTInboxViewController: 0x7ff098de34d0&gt;",
      "&lt;VTChatViewController: 0x7ff095827e00&gt;",
      "&lt;VTDiscoverProfessionalDetailsViewController: 0x7ff095424a00&gt;",
      "&lt;VTRequestScheduleViewController: 0x7ff095814c00&gt;"
  )
  </code></pre>
  
  <p>So while popping to home view from top view I am getting a crash in inbox view saying</p>
  
  <pre><code>An instance 0x7ff094a33800 of class UITableView was deallocated while key value observers were still registered with it. Current observation info: &lt;NSKeyValueObservationInfo 0x608002e3f680&gt; (
  &lt;NSKeyValueObservance 0x60800585c1d0: Observer: 0x7ff098f1b8d0, Key path: contentOffset, Options: &lt;New: YES, Old: NO, Prior: NO&gt; Context: 0x0, Property: 0x60800585c140&gt;
  &lt;NSKeyValueObservance 0x60800585c320: Observer: 0x7ff098f1b8d0, Key path: contentSize, Options: &lt;New: YES, Old: NO, Prior: NO&gt; Context: 0x0, Property: 0x60800585c290&gt;
  &lt;NSKeyValueObservance 0x60800585c410: Observer: 0x7ff098f1b8d0, Key path: frame, Options: &lt;New: YES, Old: NO, Prior: NO&gt; Context: 0x0, Property: 0x60800585c380&gt;
  &lt;NSKeyValueObservance 0x60800585c500: Observer: 0x7ff098f1b8d0, Key path: contentInset, Options: &lt;New: YES, Old: NO, Prior: NO&gt; Context: 0x0, Property: 0x60800585c470&gt;
  )'
  </code></pre>
  
  <p>I tried removing <code>tableview</code> observers and setting </p>
  
  <pre><code>self.tableView.delegate = nil;
  self.tableView.dataSource = nil;
  self.tableView = nil;
  </code></pre>
  
  <p>but still no luck</p>
  
  <p>I dont understand why am I getting this crash.</p>
  
  <p>Any help would be much appreciable.</p>
  
  <p>Thanks.</p>