Reorganized pyprocgame module source into separate files but consolidated submodules. Most classes are still at the same module path externally, but the following have moved:
Most of the changes can be seen in commit c06a031d1505c30a86b4.
Mode switch handlers should now return procgame.game.SwitchStop or SwitchContinue, instead of True or False. Although the values are the same the meaning is much clearer.
Added procgame.desktop.Desktop which provides a virtual DMD and incorporates keyboard-to-event features previously in procgame.keyboard. Both are demonstrated in the source code to procgame.game.BasicGame.
Removed procgame.game.Player.info_record. Devs should use a game-specific subclass of Player with the new method procgame.game.GameController.create_player().
Added procgame.fakepinproc.FakePinPROC, a pinproc.PinPROC stand-in.
Added procgame.game.GameController.create_pinproc() to enable subclassing or replacing pinproc.PinPROC.
The procgame.sound.SoundController will disable itself if it cannot initialize pygame.mixer.
Renamed machineType variables to the more Pythonic machine_type.