Statistical Mechanics Of Proteins