# File lib/deltacloud.rb, line 70
    def initialize(user_name, password, api_url, opts={}, &block)
      opts[:version] = true
      @api_driver, @api_provider = opts[:driver], opts[:provider]
      @username, @password = opts[:username] || user_name, opts[:password] || password
      @api_uri = URI.parse(api_url)
      @features, @entry_points = {}, {}
      @verbose = opts[:verbose] || false
      discover_entry_points
      if entry_points.include?(:buckets)
        extend(ClientBucketMethods)
      end
      yield self if block_given?
    end