Make the faction changer logic much more concise.

Remove large amounts of duplicated logic, chiefly from the faction switcher code.
I'm pretty sure Nomad support should live in the Nomads mod itself. Nomad-specific code in the general lobby, unless there's no other way, should be discouraged.