Init PatternConstructorBase

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