Adapt the test suite to suit pouchdb-server

The node-qunit test suite fails when running agains the pouchdb-server because of async leveldb functionality on _destroy frequently causing incorrect queueing of events in the event loop (closing a leveldb store then trying to read from it). For now we can get around this with setting `PERSIST_DATABASES=true;` in pouch.utils.js, but when proper queueing is done we may be able to go back to `false`.

Additionally, the tests in `test.issue221.js` are very specific and, for the time being, can't be mapped to a pouchdb instance behind the http request. We'll use some simple feature detection to ignore this test file when the http backend is not a couchdb server.

I'm opening this issue mostly for the sake of documentation; expecting to follow it up quickly with a pull request.