Was thinking of a novel way to do the hole detection that might be easier to wire and doesn't use any switches.
Downside is you have to use a metal ball. Ideally you could use resistive rails that can be shorted by metal for the ball to land on when it exits a hole (if such a thing exists). Otherwise you could use some form of metal tabs for the ball to land on when it exits the hole as shown in the drawing below. The metal tabs could be wrapped around the nonconductive rails. The value of the resistors connecting the tabs should be large enough so the affect of the contact resistance between the ball and the tabs is negligible.
Each hole would have a unique "current" associated with it when the ball shorts across the two tabs. This current would be sensed by the current sense amplifier and converted to a voltage. The voltage is read by the analog to digital converter and the corresponding output code is sent to the CPU.