Add support for payloads, always used as ()
typeInference returns all subexpr types
Oops: did not force the entire result of type inference
Benchmark all subexpression types
Add Generic instances for data types
Add NFData instances for data-types
Avoid expensive show to force full type inference