DGA cleanup
First two changes are a cosmetic cleanup to event handling. Third change moves some cleanup code into the CloseScreen hook where such things belong, instead of at a random time during screen teardown that would probably crash if you looked at it funny.