fun track(): Pair<List<FlowStateMachineImpl<*>>, Observable<Change>>
Atomic get snapshot + subscribe. This is needed so we don't miss updates between subscriptions to changes and calls to allStateMachines