universal property functor full functor functor category overfunctor global element identity functor morphism zero morphism comma category