Add support for subprotocols