Category Theory: Why Functor?