Save raw request headers

Previous discussions in https://github.com/typhoeus/ethon/issues/63 and https://github.com/typhoeus/typhoeus/issues/247.

Allows you to do this:
```ruby
easy = Ethon::Easy.new url: "example.com",
                       followlocation: true,
                       headers: { "X-Test" => "hi" }
easy.perform
puts easy.request_headers
```

Output:
```
GET / HTTP/1.1
Host: example.com
Accept: */*
X-Test: hi

GET / HTTP/1.0
Host: example.iana.org
Accept: */*
X-Test: hi
```