Add new staticpages backend: external

This pull request concludes the Adhocracy side of what has been developed and used in the last year in the long living kotti/staticpages branches.

It can either be used against the `adhocracy.kotti` package which lives in the `feature-kotti-2.2.1` branch of liqd/adhocracy or against the plone package in [liqd/adhocracy.plone](https://github.com/liqd/adhocracy.plone).

This also adds a few more features which are only available with the external staticpages backend (automatic navigation creation, permissions) and features which are available with all backends (hierarchical static pages, customizing flags).

Furthermore the database based API is slightly modified in order to work with underscores. I don't quite remember why this happened in this branch, but I'm tired of rebasing this. Also the solution proposed in #676 would be better, but this already improves the status quo.