Allow all HTTP headers to be overridden by <http_header>

I noticed, that certain headers, like `Content-Type` cannot be set via `<http_header>`. Although content type can be set using the `content_type` attribute on `<http>`[0], I don't see a good reason, why you should not be able to set it via `<http_header>`.

`Content-Length` could previously not set at all and was always determined by tsung. For almost all cases this is fine, but I ran into this, because I needed to assess that the server performs correctly, even if the provided content-length is incorrect. Additionally, according to RFC2616, sec 14.13[1], the content type **SHOULD** be provided, but it is not required for methods transferring a message body.

This pull request allows any HTTP header to be set via `<http_header>`. If you don't provide them, the behavior is expected to be unchanged.


[0]
```xml
<http url="/example" method="POST" version="1.1" content_type="my-type" contents="0123456789">
```

[1] http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13