automatically deriving Functor Re[2]: [Haskell-cafe] automatically deriving Map and Filter on datatypes etc.