Remove lingering <p> elements. Add heading IDs.

Per HTML, a run of text is a "paragraph".  <p> is just one way to explicitly mark some text as a paragraph, particularly when multiple paragraphs follow each other.

In other words, `<li>foo` is identical semantically to `<li><p>foo`.