Converts a Gen to an Arbitrary so that you can pass a Gen anywhere that requires an Arbitrary.
This seems like a good default:
implicit val arbThing: Arbitrary[T] = genThing
this does not implicitly convert implicit Gens into Arbitrary, (1) this would undermine the purpose of having a separate Arbitrary type (2) making a Gen implicit is not a standard pattern anyway