Bioinformatics Approaches for Understanding and Predicting Protein Folding Rates