HTTP these days (via WebSockets) allows for the creation of stateful connections. My idea is that HTTP will just expand to encompass any remaining non-HTTP use cases. HTTP isn't even coupled to TCO anymore!
The WebSocket Protocol is an independent TCP-based protocol. Its only relationship to HTTP is that its handshake is interpreted by HTTP servers as an Upgrade request.
https://tools.ietf.org/html/rfc6455#section-1.7If you do connection setup, service disambiguation, redirects, and so on with HTTP and switch to a non-HTTP interactive protocol, what you've effectively done is create an HTTP sub-protocol, and I don't care what the document you quoted says.