Enzyme (re)design: lessons from natural evolution and computation.