Evil twin now castable on and by monsters, bug fixes.

Changed evil twin so it can now be cast properly by, and on monsters. Casting the spell on a monster won't create an actual 'evil twin' battler, instead it creates an apparition of the target monster with 1-10% of the monster's hit points dependent on caster spellpower.

Evil twin can't be cast on other evil twins, reflections, lich queen, orc pit boss/body, lupogg king or revenants due to various poor interactions or potential bugs. Dark angels have been changed to call the spell by SID rather than implementing parts of the spell in dangel.kod, which was causing a lot of error spam.

Only castable once on a player target (same as live server) but can be cast multiple times on a monster target. Rooms no longer limited to one evil twin - now each player is limited to one evil twin chasing them at a time. Evil twins still won't be cast if room is full of monsters, or hits the illusion limit.

Fixed an issue where attacking evil twins and reflections in guild halls would trigger a safety check rather than allow the attack in line with how other combat behaves in halls currently. Also stopped RemoveControlledMinion() from trying to remove a minion from a non-existent list i.e. when a player's last reflection is deleted.