Change ns_config:update so that there's no need to pass a marker.

Instead it's created inside the function itself and passed to the
callback function.

Change-Id: I3513591c64aa3c13762c1b5a17f528344585c639
Reviewed-on: http://review.couchbase.org/35285
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Allow to soft-delete keys from the config.

They are not really deleted but just get their values replaced with
'_deleted' atom. And then if config conflict happens, this special
value will always lose to non-deleted one.

Change-Id: I06d5915c16a7dae21d34db99b023f45cd1a2b64a
Reviewed-on: http://review.couchbase.org/35286
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Extend ns_config:update so that it can do soft-deletes.

Change-Id: I095b4cb6c7217906998463ad11ea86fd92108ad6
Reviewed-on: http://review.couchbase.org/35287
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Soft-delete all per-node keys from config when shunning a node.

Change-Id: I358ed41f413810371e77cb40730174afe3998b20
Reviewed-on: http://review.couchbase.org/35288
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>