Comonads.

WWW: http://github.com/ekmett/comonad/
