1. A method performed on a computer processor, said method comprising: receiving a first group of routines, each of said routines in said first group of routines comprising a contract and an implementation; receiving a second group of routines, each of said routines in said second group of routines comprising a contract; comparing said first set of routines to said second set of routines to perform at least one set operation on said routines, said set operation being performed by comparing said contracts.