ClientImpl does not properly store the username during initialization so
the HTTP Client looses track of the connection and clients don't get
cleaned up properly.

Also found and fixed an issue where AuthenticatedConnectionCache was not
locking all refcount manipulations.
Merge remote-tracking branch 'origin/master' into ENG-5545-CorrectHTTPClientDeallocation-2
Merge pull request #1224 from VoltDB/ENG-5545-CorrectHTTPClientDeallocation-2

ClientImpl does not properly store the username during initialization so