code: function ImboClient(options, publicKey, privateKey) {
      // Run a feature check, ensuring all required features are present
      features.checkFeatures();
  
      // Initialize options
      var opts = this.options = {
          hosts: parseUrls(options.hosts || options),
          publicKey: options.publicKey || publicKey,
          privateKey: options.privateKey || privateKey,
          user: options.user || options.publicKey || publicKey
      };
  
      // Validate options
      ['publicKey', 'privateKey', 'user'].forEach(function validateOption(opt) {
          if (!opts[opt] || typeof opts[opt] !== 'string') {
              throw new Error('`options.' + opt + '` must be a valid string');
          }
      });
  }
docs: Constructs a new Imbo client
  
  @param {Object} options
  @param {String} publicKey
  @param {String} privateKey
  @throws Will throw an error if there are unsupported features