Rolls all the ball and chute handling code into its own module.
Avoids rerendering chutes and balls unless they change.
Avoids redrawing the scoreboard when it doesn't change.
Avoids rerendering pins unless they change.