Don't let the divisor get too small.
Create a regular grid of spheres to start with.
Randomise the positions and colours of the spheres.
Add both reflective and glossy balls.
For reflective misses return the background colour.
Fix typo.
Reflactance needs to be handled completely differently to the shader.