[Haskell-cafe] more generic class instances?