Hi Caitlin, one way to approach this is by using programs in your engagement programs. Using your example above, when someone becomes a member of email program b from nurture program a, then part of the flow should also become that they are added as a member of email program x which lives in nurture program z. Since they're a member of email program x, if that comes up later on, then they won't be added to the program again.
Edward Unthank did a
great presentation about this at Summit which details this further.