Improve HTML entity decoding

ent doesn’t support all HTML named character references, and doesn’t support encoding/decoding astral Unicode symbols.

[_he_](http://mths.be/he) handles this just fine.