Fix Effect expiration

- Effects can call expire() to be cleaned up at the end of the SG or
round, whichever comes first
- Testclass's charged lazor effect now makes sure the attacking action
was owned by the charge's owner, which is correct behavior
- Fix comments and semicolons everywhere I go