Add TransitionCookie and ephemeral return functionality.

At this stage, return animations are usable, but only ephemeral returns.
In practice these are only planned for Launcher (at least for now), and
the actual integration might require more helpers to make the Launcher
side cleaner. Nevertheless, I tested these changes in System UI and they
work as expected.

Bug: 323863002
Flag: ACONFIG com.android.systemui.shared.return_animation_framework_library DISABLED
Test: extended unit tests and tested manually with flag on and off
Change-Id: I5daeaa6f9189966ac37e85f4440b0be4cd1eb545
7 files changed