RNA and protein folding: common themes and variations.