A matcher factory that can produce a matcher given three typeclass instances.

In the type parameters for this class, "SC" means superclass; "TC"
(in TC1, TC2, etc.) means typeclass.
This class's matcher factory method will produce a Matcher[T], where T is a subtype of (or the same type
as) SC, given a typeclass instance for each TCn
implicit parameter (for example, a TC1[T], TC2[T], etc.).