[roll third_party/pigweed] pw_transfer: Refactor Python client as a state machine

This rewrites parts of the Python transfer client to function as a state
machine, similar to the C++ and Java clients. This is done in
preparation for supporting the v2 transfer protocol with opening and
closing handshake phases.

Original-Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/108062

https://pigweed.googlesource.com/pigweed/pigweed
third_party/pigweed Rolled-Commits: 8ed25cb2a86b846..ffe518e094474c7
Roller-URL: https://ci.chromium.org/b/8802483974414308001
GitWatcher: ignore
CQ-Do-Not-Cancel-Tryjobs: true
Change-Id: I5b6bbcc40b49cf73f8df330fc394eccdabadf470
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/experimental/+/111025
Commit-Queue: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
Bot-Commit: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
diff --git a/third_party/pigweed b/third_party/pigweed
index 8ed25cb..ffe518e 160000
--- a/third_party/pigweed
+++ b/third_party/pigweed
@@ -1 +1 @@
-Subproject commit 8ed25cb2a86b846ba99efeb97ea79f625e510b76
+Subproject commit ffe518e094474c724b062015ef83c7d5de72394f