Comonad transformers using functional dependencies
