Currently, matcher declaration is too verbose (at least for simple cases) and requires four methods. Simple matchers should not require all of this.
The goal is make simple class matchers as simple as the ones declared as functions (using convention over configuration, for example). If we reach this, we can drop support to matchers declared as functions, having only one way to create matchers.