Removed unused @interfaces
Experiment: specify transition to and from a screen with an annotation

Transitions are specified using @Transition interface.
When pushing a new screen Forward, the annotation specifies what animations
to run when removing old views and adding new views.

For moving Backwards transitions must be stored into the screen object and
persisted in the backstack because the annotated Screen is no longer accessible
due to the way Flow works.

StateBlueprint was modified to store transitions of the incoming screen and ScreenConductor loads them accordingly.

Added examples of infinite flow navigation for demo purposes.