Category Theory and Categorical Algebra