Small overhaul on spells; now pass SpellProperties instead of values