SPY-128: Adding support for CAS Delete.

This changeset uses the functionality that was already there and
just exposes it to the outside. It is now possible to use delete
with CAS if needed.

Change-Id: I72652587424297b3373bf4914a5c54799ebd6179
Reviewed-on: http://review.couchbase.org/27107
Reviewed-by: Matt Ingenthron <matt@couchbase.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit 98ca257ae6255edb10a2f75c4a3f26240baee2b3)
SPY-113: Implement underlying foundation for replica read.

This changeset implements the facilities that need to be in place
to handle replica reads up the stack (typically inside the
couchbase client library).

Change-Id: I7ba237ec559c14b6f1b9876b058fff583b56d020
Reviewed-on: http://review.couchbase.org/24749
Reviewed-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit 00f2e785d9724f121f71c6ba20e33e79a8a055aa)
SPY-118: Include more information in the timeout message.

Note: there isn't coherency in this commit, but that is somewhat
intentional to not take on the overhead. The message is on the user's
thread and the updates of last read are on the IO thread.

Change-Id: Ia0a7cdc9296ea1de34d23a4d67c8a6bd1db7ba93
Reviewed-on: http://review.couchbase.org/26101
Reviewed-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit d07bbbdf2aa7c7020670a115ec3ea23334384e43)