Add GHC Generic instances for the datatypes in Types.hs