Reusable Validators/Contracts

@i2w was doing some work on contract composition, but I don’t believe that has been completed.