Fireballs and meteors don't disappear until the next turn rather than at the end of the turn. I've seen situations where the AI attacks the fireballs/meteors at the beginning of a turn. Hilarious, but nevertheless a bug 
Found a way to fix it: move the code responsible for removing spell units from onBeginGameTurn to onBeginPlayerTurn. It seems like onBeginPlayerTurn fires for each player first before onBeginGameTurn, so the AI does it stuff before onBeginGameTurn even fires. Strange...

Found a way to fix it: move the code responsible for removing spell units from onBeginGameTurn to onBeginPlayerTurn. It seems like onBeginPlayerTurn fires for each player first before onBeginGameTurn, so the AI does it stuff before onBeginGameTurn even fires. Strange...