Fix PB message keys when field position > 15

According to PB spec: 'Each key in the streamed message is a varint with the value (field_number << 3) | wire_type' so this patch correctly writes varint key to `bytes` instead of a integer.