Skip database-less plugins in `indico plugindb`
Require --plugin for dangerous plugindb commands

Prevents people from e.g. accidentally downgrading all plugin databases.
Also it does not make much sense to create a new revision for every
single plugin that uses the DB.
Create alembic version table in public schema
Update alembic
Handle plugins in `indico db prepare`

It is kind of ugly that we need to deal with plugins there but there's
no good way to get rid of them.
Refactor migrate_to_sqlalchemy

- separate top-level package, indico_zodbimport
- proper cli command:indico-zodbimport
- additional migration modules can be registered using entry points

Usage is e.g. like this for RB migration:

indico-zodbimport postgresql:///indico zeo://127.0.0.1:9675 roombooking --rb-zodb-uri ... --photo-path ...
Fix cached_classproperty to use the MRO

Accessing the property failed when doing so in a subclass of the class
containing the property. Now it is properly looked up througout the MRO,
but still cached on the current class (to avoid polluting a superclass
since the actual result might very well be specific to the subclass)
Make IndicoPlugin.settings a classproperty

It does not rely on any instance state (besides cls.name being set,
which happens when the plugin is loaded).
Load plugins if necessary
Add migration pre-check and plugin db check util
Add some plugin docs
Remove broken import
Explain how to render tpls outside plugin
Add active plugin list to indico.conf.sample
Expect plugin bluprints prefix; add url_for_plugin