Clean up main menu code, break stuff out into subclasses.