[Cherry-pick] Add #apex APIs for subscribing to atom events

- Add APIs to libstatspull.
- #apex APIs wrap Binder calls into StatsService.
- Add Binder implementation in StatsService + ShellSubscriber +
  ShellSubscriberClient.
- Add an e2e test in libstatspull_test.

See go/ww-atom-subscriber-api

Bug: 268661096
Bug: 247858731
Bug: 268822860
Bug: 272619721
Test: m libstatspull
Test: m statsd
Test: banchan com.google.android.os.statsd mainline_modules_arm64 &&
UNBUNDLED_BUILD_SDKS_FROM_SOURCE=true m apps_only dist
Test: m statsd_test && adb sync data && adb shell
data/nativetest64/statsd_test/statsd_test64
Test: atest --no-bazel-mode
CtsStatsdHostTestCases:android.cts.statsd.subscriber.ShellSubscriberTest
Test: m libstatspull_test && adb sync data && adb shell
data/nativetest64/libstatspull_test/libstatspull_test64

Merged-In: Ie2b696abc836b593d6e3ad090871851b3304b584
Change-Id: Ie2b696abc836b593d6e3ad090871851b3304b584
(cherry picked from commit d7672abac15ecd776d67b34c24e69fa4453b1803)
20 files changed