More pseudofunctors (but not as many as I'd like)

Define the identity pseudofunctor, and pseudofunctors from initial and terminal categories.

This contains one commit shared with #384, the small lemma about [idtoiso] and [components_of].

I'd love help figuring out why it takes 13 seconds on my machine (so, probably 30 seconds on travis) to define the identity pseudofunctor.

I had another commit which reorganized the rewriting laws for pseudofunctors a bit.  Unfortunately, it added 45 seconds on my machine, and caused a 50% slowdown in the Grothendieck construction of a pseudofunctor to Cat.  So I'm going to hold on to that one until I figure out what's going on.