_construct(template, shadowOpts) {
    if (!shadowOpts) shadowOpts = { mode: "open", delegatesFocus: true };
    this.attachShadow(shadowOpts).append(template);
    this.createShadowSelectors();
  }
Standardised constructor. Keep after call to super()
@param {Node|string} template Nodes/string content that will be cloned into the shadow dom
@param {{mode:'open'|'closed',delegatesFocus:boolean}=} shadowOpts Options passed to attachShadow