[minor] add a check for tests that are too slow
[minor] generate small lists to accelerate quicktests
an experimentation with "module classes" for equality and comparison

We provide two comparison types, the legacy `type 'a comp = 'a -> 'a -> int`,
as well as the nicer to use `type 'a ord = 'a -> 'a -> (Lt | Eq | Gt)`.
Conversion combinators back and forth should make them both equally
easy to use.
[minor] a `on` function to be used with comparison : `on Int.ord height`...
three experiment with "module classes": Char, Tuple and List