[stdlib]: Add an android_app_process_starts module

The android_startup module currently only considers activity
launches as startups. This module considers all process starts
including: broadcast, service, activity and provider.

The process start reason is attributed to the first lifecycle slice
after the bindApplication slice and an Intent Component or Action
is blamed based on the slice details.

We don't currently have provider process start information in traces
so even if they are included, we don't have any intent information
for them and there are some impl special casing required to extract
some basic provider information.

The resulting information is stored in the android_app_process_starts table
with 3 key timestamps and some other metadata:
1. proc_start_ts: Timestamp process the process start was dispatched
from system_server
2. bind_app_ts: Timestamp the app started init started.
3. intent_ts: Timestamp the intent handling started (NULL for provider).

Test: tools/diff_test_trace_processor.py out/android/trace_processor_shell --name-filter '.*AndroidStdlib:startup.*'
Change-Id: Ib467c33e7fa49406516ee66456a66edb14d865df
diff --git a/Android.bp b/Android.bp
index ebf7e39..193f108 100644
--- a/Android.bp
+++ b/Android.bp
@@ -11882,6 +11882,7 @@
     name: "perfetto_src_trace_processor_perfetto_sql_stdlib_stdlib",
     srcs: [
         "src/trace_processor/perfetto_sql/stdlib/android/anrs.sql",
+        "src/trace_processor/perfetto_sql/stdlib/android/app_process_starts.sql",
         "src/trace_processor/perfetto_sql/stdlib/android/battery.sql",
         "src/trace_processor/perfetto_sql/stdlib/android/battery_stats.sql",
         "src/trace_processor/perfetto_sql/stdlib/android/binder.sql",