Allow arr ∧ (first ∨ (***)) as minimal definition of Arrow instance
Add default definitions of first
, second
in terms of (***)
to let one define an Arrow
instance in terms of (***)
rather than first
, which is sometimes more elegant or convenient.