First approach of types, mixins and factories in vanilla js