Mark log events with their associated build operation id Use BuildOperationIdentifierRegistry in all of the places where we generate renderable output events to set build operation id.
Serialize Operation identifiers coming from forked processes.
Use Builder pattern for constructing renderable output events to avoid an explosion of constructors while maintaining forward compatibility. (0 uses of StyledTextOutputEvent in non-forked repos, so removed those constructors, they're internal anyway)
Reuse BuildOperation ids through progress logging where we can.