class HTTP::Options

def initialize(options = {})

def initialize(options = {})
  defaults = {
    :response           => :auto,
    :proxy              => {},
    :timeout_class      => self.class.default_timeout_class,
    :timeout_options    => {},
    :socket_class       => self.class.default_socket_class,
    :nodelay            => false,
    :ssl_socket_class   => self.class.default_ssl_socket_class,
    :ssl                => {},
    :keep_alive_timeout => 5,
    :headers            => {},
    :cookies            => {},
    :encoding           => nil,
    :features           => {}
  }
  opts_w_defaults = defaults.merge(options)
  opts_w_defaults[:headers] = HTTP::Headers.coerce(opts_w_defaults[:headers])
  opts_w_defaults.each { |(k, v)| self[k] = v }
end