Allow explicit configuration of http auth key

Addresses #2288.

* Adds a new configuration option, `http_auth_key`, which specifies which parameter the username in HTTP Basic auth should be passed as.
* Fix basic auth case in which authorized_keys is configured as hash
* Duplicate existing functionality when http_auth_key is not explicitly
  set