Verify activity destruction when occluded

- Adds a test for activity launching another one and finishing
  itself immediately - it should be destroyed without timeout.
- Make the base activity class in lifecycle test accept extra
  action so other tests can reuse its subclasses easier.
- Since the destruction of activity on non-focused stack is
  changed, now only the launch of activity will bring its display
  to the top, and activity destruction on non-focused display
  won't grab the focus when resuming the next activity.

Bug: 142020090
Test: atest ActivityLifecycleTests# \
            testTrampolineAnotherExistingProcessNewTask
      atest ActivityLifecycleTopResumedStateTests# \
            testFinishOnDifferentDisplay_nonFocused
Change-Id: Ic6160220504f12093e36d3e45c557ea305bd1f3d
3 files changed