Allow contract_double to use multiple contracts.

This allows you to create a double of an object that implements
multiple contracts.