code: function(options) {
    options.usernameField || (options.usernameField = 'username');
    options.passwordField || (options.passwordField = 'password');
    return options;
  }
docs: Options callback callback (ie. the callback given if giving a callback
  for options instead of an object)
  
  @callback optionsCallbackCallback
  @param {(Error|undefined)} err - Possible error
  @param {Object} options - Options object
   
  Options callback
  
  @callback optionsCallback
  @param {Object} req - HTTP request
  @param {optionsCallbackCallback} callback - The callback returning the options
   
  Verify done callback
  
  @callback verifyDoneCallback
  @param {(Error|undefined)} err - Possible error
  @param {(Object|boolean)} user - The verified user or false if not allowed
  @param {Object} [info] info - Additional info message
   
  Found LDAP user verify callback
  
  @callback verifyCallback
  @param {Object} user - The user object from LDAP
  @param {verifyDoneCallback} callback - The verify callback
   
  Found LDAP user verify callback with request
  
  @callback verifyReqCallback
  @param {Object} req - The HTTP request
  @param {Object} user - The user object from LDAP
  @param {verifyDoneCallback} callback - The verify callback
   
  @typedef credentialsLookupResult
  @type {object}
  @property {string} username - Username to use
  @property {string} password - Password to use
   
  @typedef credentialsLookupResultAlt
  @type {object}
  @property {string} user - Username to use
  @property {string} pass - Password to use
   
  Credentials lookup function
  
  @callback credentialsLookup
  @param {Object} req - The HTTP request
  @return {(credentialsLookupResult|credentialsLookupResultAlt)} - Found credentials
   
  Synchronous function for doing something with an error if handling
  errors as failures
  
  @callback failureErrorCallback
  @param {Error} err - The error occurred
   
  Add default values to options
  
  @private
  @param {Object} options - Options object
  @returns {Object} The given options with defaults filled