Added HeadersDictionary from katana project and slightly adapted it.
Replaced all occurrences of IDictionary<string, string> with IHeadersDictionary
Updated mapping and general usages of headers to take the above changes into account, mostly loops expecting a single header value.