title: dequeueReusableCellWithReuseIdentifier crash 'could not dequeue a view of kind" UICollectionElementKindCell'
body: <p>I am getting the following crash:</p>
  
  <blockquote>
    <p>Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'could not dequeue a view of kind: UICollectionElementKindCell with identifier Cell - must register a nib or a class for the identifier or connect a prototype cell in a storyboard'</p>
  </blockquote>
  
  <p>I do have the following in my ViewDidLoad:</p>
  
  <pre><code>[self.collectionView registerClass:[UICollectionViewCell class] 
          forCellWithReuseIdentifier:@"Cell"];
  </code></pre>
  
  <p>And the line that crashes is in the cellForItemAtIndexPath callback:</p>
  
  <pre><code>UICollectionViewCell *cell = [collectionView 
      dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
  </code></pre>
  
  <p>I've been searching for hours but cannot find any solution.  I've tried subclassing the UICollectionViewCell but get the same error.</p>
  
  <p>With breakpoints I have determined that the registerClass line is being executed before the dequeueReusableCellWithReuseIdentifier callback is executed.</p>