Added contravariance support for value types in ContractProvider.
Added tests for contravariance on value types.