Pulled inner classes out into their own files for readability, added Participant and Speaker classes, and updated the UML diagram.