Introduce TransitionKey

This CL introduces TransitionKey, which can be used to specify which
transition should be used when transitioning between scenes. It can be
specified both for user gestures through UserActionResult or for
triggered animations using MutableSceneTransitionLayoutState. Note that
there is no API for triggered animations backed by a hoisted
SceneTransitionLayoutState.

Bug: 315921512
Test: SceneTransitionLayoutStateTest
Test: SwipeToSceneTest
Flag: N/A
Change-Id: I2cdc2d78da41c8bb1b3234e09096faa15c3f265c
12 files changed