Use `define-check`.
Add comments about why test disabled.
Comments and small tweaks.
Change smart punctuation rules for hyphens -> dashes.

"---" and "--" _always_ become &mdash;

"-" becomes &ndash; IFF followed by optional spaces and a digit. In
other words, &ndash; is used for things like "617-555-1212" and "1 + 2
- 3", but _not_ for things like "non-dashed" or "foo - bar".

Not only is the output more desirable, the parser is slightly but
measurably faster because the grammar is simpler.
Change xexpr->text to match bf86f0b8.

Not sure it matters, but.