code: function makeAPI(config = {}) {
      let fullConfig = Object.assign({}, exports.DEFAULT_CONFIG, config);
      return new APIImpl(fullConfig);
  }
docs: Create a new API with the given configuration provided in a single
  object map. Any parameter that is not provided will use the default value
  in {@link DEFAULT_CONFIG}.
  
  It is strongly recommended that a custom user agent be provided.
  
  @param config The configuration for the API
  @returns The API instance