allow instance DB name to be different from slug

when instantiating the db connection for an instance check for a dbname
property on the instance. If present use that as the DB name suffix,
otherwise fall back to the slug name for backwards compatability

Note that as connection details are cached any operation that changes
the db either needs to remove the cache entry or restart the popit
process.

Fixes #583
Part of #516
update replace database script to just change instance pointer

Change the script to import the data into a new database and then point
the existing instance at the new database. The new database is called
the same as the old one with the date in yyyymmdd format appended.

For #516
copy across instance settings when replacing db

we need to do this otherwise we lose the description etc.
allow instances to be marked unavailable

Add in middleware to check if an instance has been marked as unavailable
and a script to change the setting

Fixes #516
Set API to use alternative db if required
update popit-api dependency to correct version