(pouchdb/pouchb-server#72) - change PouchDB on the fly

pouchdb/pouchdb-server#72 needs this for two reasons:
1) when the couchdb.database_dir config option changes, it needs to update to the new value without a restart.
2) when starting, it needs to be able to access app.couchConfig for default values for its command line arguments before creating the PouchDB object.

@nolanlawson It could happen when the api is used incorrectly. Which is why I added an explicit error. The following example would trigger it:

var request = require('supertest');
//To fix, either pass PouchDB in in the constructor like always.
var app = require('express-pouchdb')();
//or add this line here: app.setPouchDB(PouchDB)
request(app).get('/test').end()