CBD-910 Allow user to provide sequences as-is

A flag can be passed to the couchstore_save_* functions that will cause
Couchstore to not assign sequences, but use the ones already on the
DocInfo records it is provided. If any sequences are higher than the
current update_seq, update_seq will be raised to match it.

Change-Id: I8f2229ee8aca87a62b0c88ece78ab218b0430e5c
Reviewed-on: http://review.couchbase.org/27000
Reviewed-by: Fulu Li <fulu@couchbase.com>
Reviewed-by: Volker Mische <volker.mische@gmail.com>
Tested-by: Aaron Miller <apage43@ninjawhale.com>
CBD-910 Allow disassociating db handle from fd

This enables a Db handle to act as a weak reference to a snapshot that
can be held without holding a file descriptor.

The handle cannot be used for I/O until it is reattached to the same
file (or at least the same behind the position the handle was at) it was
detached from.

Change-Id: I5761795c993aa59b9e453665818a5103ea3eafa0
Reviewed-on: http://review.couchbase.org/27015
Reviewed-by: Volker Mische <volker.mische@gmail.com>
Reviewed-by: Fulu Li <fulu@couchbase.com>
Tested-by: Aaron Miller <apage43@ninjawhale.com>