(#3089) - truly auto auto-compaction
(#3015) - Issues GET requests on pull replication in parallel for each batch.

In node.js using default settings (5 connections in the pool + 100 docs per batch) over a HTTP connection to a local PouchDB server perf increased by 8x over previous perf.

When replicating down the 0.6 gig NPM CouchDB database over HTTPS using CouchDB locally it took CouchDB about 0.69 seconds/100 records. Without this change it took PouchDB around 30 seconds/100 records. With this change on default settings we reduced time to 4 seconds/100 records. By changing the number of connections to 15 and the batch size to 1000 we got perf down to 0.9 seconds/100 records. So perf got down to only 30% worse than CouchDB. I strongly suspect that when the node.js connection harvesting bug is fixed (so we don't lose our existing connections between batches) and with a little more tweaking (it's clear that we are a bit more 'chatty' than CouchDB's replication client) we should be able to match CouchDB's perf.
(#3094) - Add easy to run couchdb server with Docker and Fig

update CONTRIBUTING and TESTING accordingly
remove test part from CONTRIBUTING, link to TESTING, DRY
(#3178) - update "12 tips" post
(#3181) - update jshint, fix new lint errors

In my IDE the jshint plugin complains about this.
Now it's fixed.
(#3182) - avoid on-the-fly idb migrations

I was getting tired of the code complexity with
having to figure out whether `metadata.winningRev`
and `metadata.seq` were there or not. This adds
a new migration to get everything up to the modern
format.

So technically this migration isn't necessary, but I like
being able to remove a lot of complexity from the runtime
code, at the cost of a moderately-expensive migration
for existing databases.

I also went ahead and refactored the migration logic itself.
It's more readable now.
(#3184) - Add leveldown-prebuilt to Windows documentation