Split monads from the main class.
Separate types into subclasses.
Oops
Implement function types.
Implement coarbitrary for List
Implement coarbitrary for Char
Implement coarbitrary for Enum.
Implament coarbitarary for Integer
Don't export when subclasses used.
Implement coarbitrary for Product.
Implement coarbitrary for RefArray
Implement coarbitrary for String
Check returned values instead of parameters.
Simplify the definition of RefArray.
Implement coarbitrary for RefHash.
Merge branch 'coarbitrary'