added abstract StepKeyboardMediator child
PatternBank and Pattern refactor, Pattern is single file