Theoretical Methods for Strongly Correlated Electrons