Introduced ns_connection::proto_handler. Rationale: proto_data will be used to store protocol-specific settings, e.g. whether to reassemble fragmented websocket frames