the bare minimum, just to get the relationship established. mostly
it's calling upstream subscriber / event hooks where applicable.
this also overhauls the docs config to use furo theme etc.
apparently with python 3.6 things "mostly" work but then they break if
any specified dependencies have a dot in the name. which in this
project, is the case for `zope.sqlalchemy`
so until we drop python 3.6 support, we cannot use pyproject.toml here