# Functions
NewClient creates a new Client (consul, etcd or inmemory) based on the config, encodes and decodes data for storage using the codec.
NewMultiClient creates new MultiClient with given KV Clients.
PrefixClient takes a KVClient and forces a prefix on all its operations.
RegistererWithKVName wraps the provided Registerer with the KV name label.
# Structs
Config is config for a KVStore currently used by ring and HA tracker, where store can be consul or inmemory.
MultiClient implements kv.Client by forwarding all API calls to primary client.
MultiConfig is a configuration for MultiClient.
MultiRuntimeConfig has values that can change in runtime (via overrides).
StoreConfig is a configuration used for building single store client, either Consul, Etcd, Memberlist or MultiClient.
# Interfaces
Client is a high-level client for key-value stores (such as Etcd and Consul) that exposes operations such as CAS and Watch which take callbacks.