move collection view delegate and data source definitions to their own header files to clean up collection view header.