Different approach for the Attribute Manager

The AM needs to run as a Celery worker but also has to be
importable from the eduID webapps that emit the signal to update
the user attributes.

For this reason using an abstract Task is a good thing since
it allows you to cache resources that are used during the worker
lifetime (e.g. the MongoDB connection or the plugin registry)

The tricky thing is how to load configuration when run as a
worker. I've used the celeryd_init signal, which is not emited
when importing this package in the other applications.