I'm not sure how to solve the first problem you mentioned, but i think the solution for the second problem would be quite simple.
You should make switches and then an event that looks like this:
@>Conditional Branch: Switch [0001: <one of the choices here>] == ON
@>Transfer player:[<your location here>]
@>
: Else
@>
: Branch End
@>Conditional Branch: Switch [0001: <one of the choices here>] == ON
@>Transfer player:[<your location here>]
@>
: Else
@>
: Branch End
Etc, etc, etc
When you have all of your followed lords, put a "Erase Event" command under the " : Branch End"
The event itself should be run on "Parallel Process"
I hope that helps out