This patch uses mdformat to auto-format markdown documentation.
To support \ for line breaks (which is what mdformat uses), mkdocs now
requires the pymdownx.escapeall extension.
Because of incompatibilities between mdformat (which formats to
CommonMark) and mkdocs (which expects Python-Markdown), there are now
some limitations: no nested lists, multi-paragraph list items, or
admonitions support.
These limitations are acceptable for now, although some of the docs had
to be adjusted to meet them.
Some systems, like GitHub, can use `docs/SECURITY.md` to inform users on
how to report security issues.
This patch adds one to the tree. It is not linked explicitly in mkdocs
because the same information is already covered in the doc index and
README already.