Fix header case

Hey there!

The values for Connection and Upgrade headers do not necessarily have to be lowercase.
With this pullreq I first force input headers to be converted to lowercase before checking their value.

By doing it, I also didn't see the need to have multiple values for Connection and Upgrade so I removed tokenListContainsValue function. Please let me know if there is any case where multiple values could be used for either of these headers.

Best regards