Add basic auth

I need to provide basic authentication information within the HTTP header so that this client library works with etcd being proxied for authentication information.

I have added code that allows clients to provide user name and password when initializing an instance of Client and provide those (when present) to the underlying HttpRequest in the basic authentication header.

I also added a new spec file to test this behavior.