Pygame renderer can now return None
Player can be killed. Modified turn sequence

- Player is set inactive on colliding with any sprite flagged enemy, and
Rescue Rover levels will fail.
- Pygame level screens will restart when failed.
- Pass/fail check now occurs at the beginning of the level frame rather
than the end, so that the last frame is drawn before the level exits
- Sprite do_move hook now happens immediately after the start_turn hook,
instead of waiting for all sprites to complete their start_turn. This
prevents two solid sprites from entering the same cell simultaneously.
[Can hopefully think of a better solution to this problem.]
- Carried and pushed items move in sync with player; same reason.
- Some cell can_enter checks were modified to use the partial
Spritegroup.on() instead of .at()
- Player can specifically enter cells containing Rover