added missing Typeable and Data instances