fix example code
handle <section> in wrapHTMLElement

<section> doesn't get its own constructor and uses HTMLElement instead,
so return the plain BasicHTMLElement in that case.
instead of panicing, always wrap an HTML element somehow

with web components, we can't have an exhaustive list of valid HTML
elements, so always fall back to just returning a BasicHTMLElement. If
we've actually forgot any built-in elements, someone will complain
sooner or later.