docs: function Client() {
      if (arguments.length === 0) {
          throw new Error('an array of IP|fqdn[:port] or an instance of RiakCluser is required');
      }
  
      if (arguments[0] instanceof Core.RiakCluster) {
          this.cluster = arguments[0];
      } else if (Array.isArray(arguments[0])) {
          var nodes = Core.RiakNode.buildNodes(arguments[0]);
          this.cluster = new Core.RiakCluster({ nodes: nodes});
      } else {
          throw new Error('an array of IP|fqdn[:port] or an instance of RiakCluser is required');
      }
  
      var callback = function (err, client, cluster) {
          logger.debug('[Client] cluster is started.');
      };
  
      if (arguments.length === 2 && typeof arguments[1] === 'function') {
          callback = arguments[1];
      }
  
      var self = this;
      this.cluster.start(function (err, cluster) {
          callback(err, self, cluster);
      });
  }