serializeToString() fix for <tag/> non bachelor tags

When serializing back to text:

`<div class=“star”></div>` was incorrectly getting truncated to `<div
class="star"/>`

I re-wrote the default to `<tag attr="someatt"></tag>` for all tags.
Then made the exceptions for "meta|link|img|br|hr|input".
Since those tags should only allow attributes. And can be legal "bachelor" tags: `<tag/>`

I also wrote a unit test.

And also, thanks for this useful library! Cheers.