require implicit *TypeClass instance at macro invocation point

Advantage: Macro won't get executed for `C[T]` when no `TypeClass[C]`
instance is in scope
update error message
Merge remote-tracking branch 'github/pr/88'