bijection-core: Makes c.t.b.Conversion contravariant in A

For A, B, C, where there exists a Conversion from B to C,
and where A is a subtype of B, it's sensible that we should
be able to convert from A to B.  In fact, if we cast an instance
of A as a B, and then do the conversion, it works fine, but it
fails if we simply try to use an asMethod directly.

By marking Conversion as contravariant in A, scala's implicit
resolution will be able to find extra valid Conversions.