Proteins, exons and molecular evolution