tp: rewrite startup metric to be much easier to understand and extend

This CL overhauls the whole startup metric to be oriented around
functions which allows much better composability than having big
monolithic views.

It also makes debugging much easier as errors in functions will be
scoped to just this function.

There should be no behavioural change as a result of this CL.

Bug: 234546650
Bug: 190219056
Change-Id: Ifc747d11d6a58199956b1cfef7d7e2c8ba9a2dc0
diff --git a/Android.bp b/Android.bp
index 7378bad..4cb171f 100644
--- a/Android.bp
+++ b/Android.bp
@@ -8594,11 +8594,15 @@
         "src/trace_processor/metrics/sql/android/process_unagg_mem_view.sql",
         "src/trace_processor/metrics/sql/android/profiler_smaps.sql",
         "src/trace_processor/metrics/sql/android/span_view_stats.sql",
+        "src/trace_processor/metrics/sql/android/startup/gc_slices.sql",
         "src/trace_processor/metrics/sql/android/startup/hsc.sql",
         "src/trace_processor/metrics/sql/android/startup/launches.sql",
         "src/trace_processor/metrics/sql/android/startup/launches_maxsdk28.sql",
         "src/trace_processor/metrics/sql/android/startup/launches_minsdk29.sql",
         "src/trace_processor/metrics/sql/android/startup/launches_minsdk33.sql",
+        "src/trace_processor/metrics/sql/android/startup/mcycles_per_launch.sql",
+        "src/trace_processor/metrics/sql/android/startup/slice_functions.sql",
+        "src/trace_processor/metrics/sql/android/startup/thread_state_breakdown.sql",
         "src/trace_processor/metrics/sql/android/unsymbolized_frames.sql",
         "src/trace_processor/metrics/sql/chrome/actual_power_by_category.sql",
         "src/trace_processor/metrics/sql/chrome/actual_power_by_rail_mode.sql",