Factors and Factorizations of Graphs