Class inheritance for JavaScript with mixins and constructors