refactoring: class names, plugins, mixins