[roll third_party/pigweed] pw_allocator: Make TrackingAllocator correct by construction

This CL removes the `Init` method from `TrackingAllocator` and
requires objects of that type to always be constructed with a valid
allocator. Previously, allowing the pointer to the wrapped allocator
to be null was believed to be needed to allow trackers around allocators
that might be optional depending on the platform. However, there is
already an allocator that can be used for this purpose: the
NullAllocator. As a result, the wrapped allocator can be a reference
instead of a pointer, and several conditional statement can be removed.

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

https://pigweed.googlesource.com/pigweed/pigweed
third_party/pigweed Rolled-Commits: e8c65f4cc0c1568..40fa6880873d75c
Roller-URL: https://ci.chromium.org/b/8755283824767921345
GitWatcher: ignore
CQ-Do-Not-Cancel-Tryjobs: true
Change-Id: I8e79d4b1fc5f936d1b3735160700c59c30c40c97
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/experimental/+/193624
Commit-Queue: Pigweed Roller <pigweed-roller@pigweed-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Pigweed Roller <pigweed-roller@pigweed-service-accounts.iam.gserviceaccount.com>
diff --git a/third_party/pigweed b/third_party/pigweed
index e8c65f4..40fa688 160000
--- a/third_party/pigweed
+++ b/third_party/pigweed
@@ -1 +1 @@
-Subproject commit e8c65f4cc0c1568b45fa42439f8bddb50ca327c9
+Subproject commit 40fa6880873d75cef18a9ef229e7cdf8734d3c91