Chain Events in Niagara / "Flag" particles / Spawn from different NS System

I´m coming from 3ds max TyFlow and I am struggling to create some of the features I regularily need.

  1. Events.

TyFlow has a node based workflow, that basically groups particles in “events”, which can each hold a bunch of operators, similar to modules in the niagara system.

With these events I can build complex logic pretty easily, for example

A) When these particles are within 500 units of this object, let them move to the next event
B) Spawn more particles from these particles and move them to the next event.
C) Go back to the emitter and then circle around the emitter object for 50 frames.
D) After 50 frames, go to the next event where we apply some additional forces.

etcetc.

How do you achieve something like this within a Niagara system?
As far as I understood, you kind of move the particles through the modules in a more less chronological fashion from emission to updates to render.

  1. “Flags” (aka “custom properties” and “groups”)
    Another important feature in tyFlow is, that you can “flag” particles with all sorts of information.
    For example, I could flag all particles from Event A) in the example above with a flag called “nearestParticles” and write the exact distance to the object, starting with the cutoff value of 500 as a flag value.
    And then in another event I could do something with these particles, based on this flag and value.
    One of the most used usecases for this for me is, that I can tell particles from one emitter to “find” or “chase” particles from another emitter, but only specific groups of these particles, that fulfill a specific condition. I can also just group particles based on the event they are being created or modified in 1.

  2. Spawning from different NS System

Spawning particles in a second emitter from particles created in the first emitter in a niagara system is similar in tyFlow…BUT…I am missing the feature, that enables me to spawn particles from ANOTHER niagara system.
Which would be neat, so wouldn´t always have to build ALL the possible spawning logic into one giant system.

Is this doable somehow and I just missed it?