A wrapper around UICollectionViewController enabling a declarative API around it's delegate methods using protocols.