Fix the module names for functor and NT

Before, e.g., [Functor.sum] wouldn't have worked.  Now it does, because
we use [Include] rather than [Export].
Implement Functor.Prod
Export functor product notations
Port natural transformation products
Merge pull request #229 from JasonGross/functor-nt-product

Port products of functors and natural transformations