Feature: Support multiple data sources (databases) for querying (#12)

The setting of which data source to query moved from the environment variables/`settings.py` to a new database model - `DataSource`. Now each re:dash install can query multiple datasources, and in each query you select what to query (each `Query` and `QueryResult` object is associated with a `DataSource`).

The migration will add your current data source as the first one (named "Default").

Besides that this pull request includes some refactoring of the background workers and tests for them.