[roll third_party/pigweed] pw_allocator: Improve UniquePtr ergonomics

This CL modifies a few aspects of UniquePtr. Specifically, it:

* Changes the return type of ``MakeUnique<T>(...)`` to be just
  ``UniquePtr<T>``, with allocation failure handled by returning null.
  This should allow for more succinct, ergonomic code.

* Modifies ``Release`` to return the pointer wrapped by a ``UniquePtr``.

* Provides accessors for ``allocator`` and ``layout``, so that
  ``Release``d values may be ``Delete``d.

Related tests and examples were added or updated.

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

https://pigweed.googlesource.com/pigweed/pigweed
third_party/pigweed Rolled-Commits: 2f9dd9339f474a9..d2e8ec33012a882
Roller-URL: https://ci.chromium.org/b/8753028964795048977
GitWatcher: ignore
CQ-Do-Not-Cancel-Tryjobs: true
Change-Id: Iecf0c315a9373f5d59f9351370e3a5d1c2882d20
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/experimental/+/197710
Bot-Commit: Pigweed Roller <pigweed-roller@pigweed-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Pigweed Roller <pigweed-roller@pigweed-service-accounts.iam.gserviceaccount.com>
diff --git a/third_party/pigweed b/third_party/pigweed
index 2f9dd93..d2e8ec3 160000
--- a/third_party/pigweed
+++ b/third_party/pigweed
@@ -1 +1 @@
-Subproject commit 2f9dd9339f474a9a94c442162ad8f522ec314f0b
+Subproject commit d2e8ec33012a8826532cb77c697ced0c32f4da7e