Break up the monolithic gametypes into something like the following to share more code and make gametype experimentation easier.