Haskell 98 distributive functors -- dual to Traversable. WWW: http://github.com/ekmett/distributive/