added descriptions for elements

In addition to the `template` and `script` block, custom elements can now also take a `description` block that lets you stick in arbitrary HTML as a description for how this element works.