Validate header names according to RFC 2616

Header name validation rules are too strict. RFC 2616 allows any ASCII character save from 0-32, 127, "(", ")", "<", ">", "@", ",", ";", ":", "\", <">, "/", "[", "]", "?", "=" and "{", "}".
Merge pull request #399 from EqualMedia/rfc2616-compat

Validate header names according to RFC 2616