Merge changes from topic "protolog-reuse-datasource" into main

* changes:
  Update ProtoLog cache updater to take an ProtoLog instance object
  Refactor PerfettoProtoLogImpl classes to take the datasource object directly and be enabled and disabled on demand
  Add options to register lifecycle callbacks on a ProtoLogDataSource
  Create shared static ProtoLogDataSource