Factor out boilerplate instances of Num, Enum etc #222

Rewrites TextT to use couple, remove boilerplate instances
Factor out boilerplate instances of Num, Enum etc #222

Rewrites HarmonicT to use couple, remove boilerplate instances