Changed the player collision detection code. Doesn't seem to glitch out now, but I didn't test every possible case.
Merge remote-tracking branch 'upstream/master'
'StartMenu' now has its own input.
Removed call to pygame.key.set_repeat since our input wasn't actually using this anyway.
(1) Changed 'debug_text_on' to 'DEBUG_VIEW' within Input class, (2) Moved '_draw_players_debug' from 'draw_screen' to 'draw_debug' within GameLoop class, (3) input.DEBUG_VIEW of GameLoop now toggles all debug drawing instead of just the green text.
Added gamepad button constants to globals.py
Input class changes: (1) changed 'ENTER' to 'ENTER_LEAVE' (this enters game from menu or returns to menu from game), (2) '_get_gamepad_input' is now '_get_gamepad_axis_buttons_pressed' and all gamepad inputs are now stored within a 'gp_input' dictionary (similar to keyboard input in 'kb_input'), (3) added '_handle_gamepad_updown_events' to __call__ to handle inputs where not repeating input is important, (4) DEBUG_VIEW can now be toggled by F12 and/or gamepad back button (as well as backquote), (5) PAUSED can now be toggled by gamepad start button, (6) ENTER_LEAVE can now be toggled by simultaneously pressing A and Y gamepad buttons.