Scrap Your Boilerplate instances for GHC's data types