andthen
The motivation is to make sure `andthen` and `orelse` are both homogeneous.
strictAnd
strictOr