header.go
func ParseProtocolHeader(header uint8) (lenBytes uint8, version uint8) {
	version = header & ProtocolVersionMask
	lenBytes = 1 << ((header & ProtocolSizeEnumMask) >> 6)
	return
}
func ParseProtocolHeader(header uint8) (lenBytes uint8, version uint8) {
	version = header & ProtocolVersionMask
	lenBytes = 1 << ((header & ProtocolSizeEnumMask) >> 6)
	return
}
// ParseProtocolHeader returns the number of bytes to read for the content length and the protocol version. The upper 2 bits represent the number of bytes in the content length (0-3 bits = 2**n). The lower 6 bits are the protocol version which determines how the bytes are interpreted.