Polymer Principles And Protein Folding