GameEvents and associated classes

All of the GameEvents are documented here along with EventVoid, EventReports, and the three EventData classes.

I'm not sure what to call the EventData classes, as I can't use < > in the filenames. 

P.S. sorry if there are a bunch of extra commits tagging along with these files. I might have screwed something up when merging my branch with the upstream repository.