2a/ Generalize GroupedRecentTaskInfo into GroupedTaskInfo

- This CL generalizes the type for the grouped task info so that we
  can reuse it for RunningTaskInfos in addition to RecentTaskInfos.
  This has the benefit of consolidating (in the future) multiple paths
  from Shell -> Launcher which require aggregating information about
  various shell features, as opposed to APIs today which contain
  only Core-specific data types (ie. the TaskInfos themselves).  There
  are otherwise no behavior changes in this CL.
- This does not change any ordering of calls from shell -> launcher,
  and does not provide more than a single task when reporting
  taskMovedToFront (this will be implemented in a followup CL)

Bug: 346588978
Flag: EXEMPT adding new flag enable_shell_top_task_tracking
Test: Build SystemUI & Launcher
Test: atest WMShellUnitTests
Change-Id: Ieb44463397bb2665fa6d8a8328be2d6a23c65792
17 files changed