use mixin instead of custom 'createClass'