a) Both the city that the citizens leave and the one they arrive in will suffer a short-term unrest boost, decreasing happiness (as the people are forced from their homes).
b) The original city will only lose its population when the citizens physically leave the city; while they are still getting ready, or sitting inside ready and waiting to move, they'll just be sitting there, creating squalor and unrest. Similarly, only when they become fully assimilated into the new city will its population increase; whilst assimilating, they will increase unrest. The unrest will last a few years after they leave/settle in.
c) Citizens will have various effects on the world around them:
i) The citizens will gradually become more and more irritated, the more time passes from when they were evicted to when they settle in. If their anger reaches a certain point, they/the city they're in will rebel and become a large Eleutheroi army, or a city with a large Eleutheroi garrisson (or both, if there are enough citizens and the rebelling city's garrisson spills over). These armies may or may not be aggressive, up to you guys, really.
ii) Citizens devastate the landscape and slow trade, even in their own regions (like enemy armies).
iii) If citizens are moved from a frontier region, their unhappiness at moving out may be decreased. If there are enough hostile armies near the settlement they move out of - i.e. the threat of a siege, and consequently their deaths, is high - they may, in fact leave the settlement happier than they were. Incidentally, perhaps add a few things that upset settlements' populations: sieges and the distance to the capital already exist as decreases to population happiness, but what about living on the frontier/next to the enemy (not necessarily distance) and/or the threat of a siege (possibly same thing)?
Citizens that are moved from a plague-ridden settlement will also be happy to leave (just make sure they aren't carrying the plague).
On a similar note, the more baths, temples etc. a city has, the smaller the lingering unrest will be once the citizens move in. Note, this is about happiness upon resettlement; the other two points are about happiness upon leaving. Note also that this is not the same as the assimilation period - i.e. the time it takes to add the citizens to the settlement's population (see 2) d)).
d) All cities have a cooldown period after assimilating 1 unit of citizens; the smaller the city, the larger the cooldown period. Also, very small settlements might take longer than 2 turns to assimilate 1 unit of citizens. This is because there are fewer resources and less manpower there to build new houses etc. Also, in terms of balance, it means that you can't skyrocket your town into a Huge City - indeed, dumping loads of citizens onto some random town will mean instant rebellion (and not the good, time-to-massacre-and-make-money type, because you'll get a huge Eleutheroi army too [see
2) c)]).
On a similar note, citizens take longer to get ready in small towns (because of less available supply to get them through the journey etc.), if you wanted to drain a small settlement of its population; and, as always, you can't have <400 people.
e) These groups of citizens can be interacted with by every type of character:
i) Allied
1) Another group of citizens: can merge with them, and they can split, like armies/fleets (1 unit=1000 citizens, therefore max. 20K per group).
2) Army: can merge, subduing anxiety/rebellious thoughts, and will help in battles (see
2) e) ii) 2)). Generals can either increase or decrease happiness, and increase or decrease rebellion, depending on traits.
3) Spy/Assassin: can merge, subduing anxiety and helping prevent enemy spies/assassins from succeeding with their missions. May involve killing off some citizens.
4) Diplomat: can merge, increasing happiness (by lying to them/calming them down).
ii) Enemy
1) Another group of citizens: either they fight or nothing happens, not sure (see
2) e) ii) 2)).
2) Army: can attack the citizens. I'm in several minds about this - either they automatically kill all/80%/50%/whatever of the citizens if they engage,
or you get an auto-resolve only battle,
or you get a normal battle, with every citizen unarmed and wielding no weapon; 1 attack, 0 charge, 1 defence and practically no morale. An auto-resolve only battle would probably be best because:
a) A normal battle would probably be quite laggy, especially with 20,000+ people!
b) 100% extermination all the time might be quite unfair as then you could get 1 Peasant (in theory) to wipe out 20,000 citizens. Even 1 unit of the most elite troop in the game would get killed eventually.
c) On the flip side, 50%/80%/whatever extermination all the time would also be unfair if you have a super-elite army which can only kill 500/1000 people (even though it would probably be able to slaughter all of them), just as 1 Peasant can.
3) Spy/Assassin: Spies obviously spy as recon for the enemy, and Assassins can kill citizens (probably in groups of 50 or 100 at a time to make it worthwhile - these assassinations spread fear and thus speed up the rebellion process).
4) Diplomat: Can try to bribe citizens to become Eleutheroi, and/or spread lies/rumours of the cruelty/military defeats/etc. of the citizens' faction, decreasing happiness. Possible option to try and convert some/all of the citizens to the Diplomat's faction...?
1) Armies with Citizens can only auto-resolve battles.
2) Armies with Citizens can fight normal battles.
3) When presented with the screen at the start of a battle, an Army with Citizens can choose to either committ all its units (including the Citizens) and auto-resolve a battle; it can tick a checkbox that will "Omit Citizens from the battle", meaning they can stay behind whilst the normal soldiers fight either an auto-resolved or normal battle (thus lowering the army's size and strength but ensuring no citizens die).
If the army were to lose, what fate would befall the hiding Citizens is up to you (extermination, flight [i.e. they flee], rebellion; a combination, depending on the battle; the enemy gets to choose; whatever).