A useful Haskell type class for abstracting string implementations.