Fix BucketMonitorTest and harden request code to avoid HTTP 401.

This changeset fixes the test cases to correctly pass in the
username. The server code has changed with 2.1 so that an
authorized header with empty user/password on the default
bucket are no longer ignored, therefore leading to
unauthorized responses in tests.

This does not affect production, because the code normally
passes in the bucket name as the user, which gets recognized
properly. A small change also now exposes this unlikely
situation with an exception, so that it just "doesnt stop"
silently in this case.

Change-Id: I46793cdc42e4851d72a81338e5ee5c47b3f86608
Reviewed-on: http://review.couchbase.org/27283
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Reviewed-by: Deepti Dawar <deepti.dawar@globallogic.com>