Http Abstractions for parsing Http headers needed for conneg

Moved from http abstractions.
Why is this here? Also WebSockets?