Add showPprDebug to GHC.Compat.Outputable
Expand type families in type literal calculation

Adds a new tycon, FunTyCon, which marks a type-level function.
In this case it closely mimics the way type family instances
are stored in GHC. It consists of a list of:
  * list of LHS types to match
  * RHS type to create

Fixes #3