     }
 }
 
+extension Cell: ReusableView {}
+
+// MARK: - Extensions
 extension UICollectionView {
     
     func register<T: UICollectionViewCell where T: ReusableView>(_: T.Type) {

        collectionView.scrollEnabled = false
        collectionView.dataSource = self
        collectionView.delegate = self
        collectionView.register(CollectionViewCell.self)
        addSubview(collectionView)
        
        let views = ["collectionView": collectionView]

    func setup() {
        button.translatesAutoresizingMaskIntoConstraints = false
        button.titleLabel?.textAlignment = .Center
        button.addTarget(self, action: "buttonTapped:", forControlEvents: .TouchUpInside)
        contentView.addSubview(button)
        
        let views = ["button": button]
