[roll third_party/pigweed] pw_protobuf: Adds a Message class for parsing

Implement a `Message` class for processing common field types such as
uint32, string, bytes, map<string, >, repeated and nested messages. The
class works on top of protobuf::StreamDecoder. The purpose is to wrap
low level details of StreamDecoder operations, and have an abstraction
layer where proto messages and fields can be represented and handled
like objects. This faciliates implementation of higher level
functionalities that involves sophisticated processing logic on proto
messages, such as update bundle verification.

Original-Bug: 456
Original-Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/60780

https://pigweed.googlesource.com/pigweed/pigweed
third_party/pigweed Rolled-Commits: 545d4974536994c..321fb69c2a67f4c
Roller-URL: https://ci.chromium.org/b/8835795960535749985
Cq-Cl-Tag: roller-builder:pigweed-experimental-roller
Cq-Cl-Tag: roller-bid:8835795960535749985
CQ-Do-Not-Cancel-Tryjobs: true
Change-Id: Ibf4cf0c3c91a72b69d8edf82421ef7601f8c4181
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/experimental/+/61461
Bot-Commit: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
Commit-Queue: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
diff --git a/third_party/pigweed b/third_party/pigweed
index 545d497..321fb69 160000
--- a/third_party/pigweed
+++ b/third_party/pigweed
@@ -1 +1 @@
-Subproject commit 545d4974536994c391c77ee0e72b88aa3f0c1592
+Subproject commit 321fb69c2a67f4c301a463b7dc99c7b395511fe1