Template Haskell support for Abstract Object like things.