Projector APIs are idempotent.

- Added error codes, ErrorNotMyVbucket, ErrorStreamRequest, ErrorStreamEnd.

Before retrying the API call, coordinator/indexer should check for,
  * bucket sanity.
  * bucket’s vbmap
  * StreamEnd / StreamRequest message from data port server.

Patchset-2:
- Instead of shutting down the bucket, partial streams are kept open
  and caller is encouraged to check with requestTimestamps and
  rollbackTimestamps before making a retry.
- Still, bucket will be shutdown for ErrorResponseTimeout.

Change-Id: I8eaea62fc69c90d2b36855eb5fdf1a08c756e7fb
Reviewed-on: http://review.couchbase.org/42699
Reviewed-by: John Liang <johliang00@gmail.com>
Reviewed-by: Pratap Chakravarthy <prataprc@couchbase.com>
Tested-by: Pratap Chakravarthy <prataprc@couchbase.com>