# Functions
IsWebSocket returns true if the request is to WebSocket.
IsWebSocketResponse checks if the response is a valid 101 Switching Protocols response and the following data should follow the WebSocket protocol.
NewWebSocket returns an io.ReadWriterCloser that can be used to send and receive data to/from a websocket.
UpgradeWebSocket checks if the request r is a WebSocket requests and adds Upgrade header if needed.