Ensure that the component.prototype and constructor prototype is the same object so mutations that happen to the prototype on the constructor after it's returned from the skate() function are reflected in the component prototype and vice versa meaning. This means that even if an element is constructed via document.createElement(), it still gets the same prototype.