Knowledge-based protein modeling and the design of novel molecules