Remove takeAction static method for MagicSigns, instead use a annotation property

Also move some logic out of the SignManager into the MagicSignsListener