Deep sequencing driven protein engineering : new methods and applications in studying the constraints of functional enzyme evolution