Introduce ElementStateScope

This CL introduces ElementStateScope, which is extended by both
SceneScope and UserActionDistance. This allows scenes to have custom
animation logic that depends on the target state of an element or scene.

Test: SwipeToSceneTest#dynamicSwipeDistance
Flag: N/A
Bug: 308961608
Change-Id: I313f8c0b57b7aa8a43f3c60ce6096536d2172893
4 files changed