Hom functor

This ports the Hom functor, some very basic profunctor theory, and full and faithful.  In addition to the standard look-over, someone should check that I got my co's and contra's right in naming the one-argument hom functors.

I haven't shown that full + faithful -> fully-faithful; this relies on proving that epi + mono -> iso in Set, and I don't see such a lemma in the library.