Init PatternConstructorBase

Introduce `PatternConstructorBase` to refactor matcher and to separate method from `Class` class.