title: CollectionView method 'referenceSizeForHeaderInSection' throws exception
body: <p>I am trying to create headers for my collectionView with dynamic height. But when I implement "referenceSizeForHeaderInSection", the app crashes with the following exception:</p>
  
  <pre><code>Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'could not dequeue a view of kind: UICollectionElementKindSectionHeader with identifier FeedHeader - must register a nib or a class for the identifier or connect a prototype cell in a storyboard'
  </code></pre>
  
  <p>Below is the code for the collectionView header:</p>
  
  <pre><code>func numberOfSections(in collectionView: UICollectionView) -&gt; Int {
      return feedArray.count
  }
  func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, referenceSizeForHeaderInSection section: Int) -&gt; CGSize {
      return CGSize(width: collectionView.frame.size.width - 20 , height: 70)
  }
  
  func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -&gt; UIEdgeInsets {
      return UIEdgeInsetsMake(10, 10, 10, 10);
  }
  
  func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -&gt; UICollectionReusableView {
      let header = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: "FeedHeader", for: indexPath) as! FeedHeader
  
      return header
  }
  </code></pre>
  
  <p>FeedHeader class is empty as I haven't added any labels to the header yet:</p>
  
  <pre><code>class FeedHeader: UICollectionReusableView
  {
  
  }
  </code></pre>
  
  <p>When I remove referenceSizeForHeaderInSection implementation, the app works without any issues.</p>
  
  <p>Have linked the header to the class as well in the storyboard.
  What might be the problem?</p>
  
  <p>Thanks in advance.</p>