title: traitCollectionDidChange is failing second time it is called
body: <p>I have the following <code>traitCollectionDidChange</code>.</p>
  
  <pre><code>- (void) traitCollectionDidChange:(UITraitCollection *)previousTraitCollection{
      [super traitCollectionDidChange:previousTraitCollection];
  
      if (previousTraitCollection.horizontalSizeClass != self.traitCollection.horizontalSizeClass){
          NSInteger horizontalClass = self.traitCollection.horizontalSizeClass;
          NSInteger verticalClass = self.traitCollection.verticalSizeClass;
          switch(horizontalClass){
              case UIUserInterfaceSizeClassCompact:
                  if (verticalClass == UIUserInterfaceSizeClassRegular){
                      // Setup for iPhone
                  }
                  break;
              case UIUserInterfaceSizeClassRegular:
                  if (verticalClass == UIUserInterfaceSizeClassRegular){
                      // Setup for iPad
                  }
                  break;
  
              default:
                  break;
          }
      }
  }
  </code></pre>
  
  <p><code>Update</code>: It fails even when just turning the iPad. Anytime the methode is getting called again it fails with: <code>if (previousTraitCollection.horizontalSizeClass != self.traitCollection.horizontalSizeClass){</code> is giving an error: [NSConcreteNotification horizontalSizeClass]: <code>unrecognized selector sent to instance</code>. As the <code>previousTraitCollection</code> is <code>nil</code>.</p>
  
  <p>Do you know why it is failing the second time?</p>