Fix assassin targeting rules

Before this patch, the Assassin can kill any Resistance member, and is
prevented from killing any Spy.
But this is sometimes incorrect behavior.

Only the Assassin's may reveal during the assassination phase.
This means that Oberon is not known to him for sure, and Oberon is thus
a valid target for assassination.
If Lancelots have switched once, Assassin is not going to kill Evil
Lance, but he doesn't know Good Lance (who is now on his side). So Good
Lance is a valid target.
Therefore, we check ORIGINAL allegiance, not current allegiance.

Finally, Oberon/Assassin can kill anyone!!!
Merge pull request #4 from leftylink/assassin_targets

Fix assassin targeting rules