(#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
(#3193) - Actually run tests against clustered couch master
(#3193) - Follow up to fix default  option
(#136) - Fix "Testing all docs" against clustered CouchDB

In Cloudant / CouchDB 2.0, the _changes feed is composed from
multiple shards and there is no guarantee that ordering
will be consistent between multiple calls.

The fix is just to test that the changes feed includes the entries
we require regardless of the order.
(#136) - Fix "Testing deleting in changes" against clustered CouchDB

Given that we cannot assume the order of a changes feed on Cloudant /
CouchDB 2.0, test that the change is included in the _changes feed
following the initial database sequence number.
(#136) - Fix "Testing include docs" against clustered CouchDB

The ordering of the changes feed is non-deterministic so just test that
the expected entry is present.
(#136) - Fix "Testing conflicts" in _changes against clustered CouchDB

_changes is unordered in a clustered CouchDB so remove this assumption
from the test.
(#3195) - Stringify "since" parameter when fetching _changes

In CouchDB 2.0, the sequence number may be represented as an array.
This commit stringifies the "since" parameter if it is an object to cope
with this scenario.
(#136) - Fix "Test create attachment and doc in one go without callback" for clustered CouchDB

We cannot rely on an ordered update sequence in clustered CouchDB.
Instead of looking at the sequence number, identify a change using
the document id.
(#136) - Fix "Test create attachment without callback" against clustered CouchDB

We cannot rely on an ordered update sequence in clustered CouchDB.
Instead, request the _changes feed following the initial docment update
using the "since" parameter. There is still potential for this to fail
because _changes may return entries before that specified by "since" -
the guarantee is that all entries following "since" will be returned.

Possibly one to review if we find that the test fails occasionally
(for me it is stable).
(#136) - Skip attachments tests which fail due to CouchDB 2.0 bugs

Skip attachment tests which fail due to missing support for attachments=true
in the CouchDB 2.0 changes feed
(https://issues.apache.org/jira/browse/COUCHDB-2519)
(#3214) - Remove chrome + webSQL configuration from travis
(#3219) - Updated losing revision in guide

To get a losing revision of a document, we have to use one out of the _conflicts-array.
(#3188) - fall back from JSON to vuvuzela
(#3211) - perf: remove unused metadata.seq idb index
(#3215) - update compaction docs
(#3222) - Fixed FAQ link URL
(#3209) - Switch bail default back to true