Query which closures an optimized shader group might make.

New shader group queries: "num_closures_needed", "closures_needed",
"unknown_closures_needed".

This are analogous to the similar texture queries: after optimizing,
they allow you to take a census of all closures that the shader group
may potentially call. The "unknown_closures_needed" is nonzero if there
are closure calls for which the system could not (even after
optimization) determine the name (an unusual case, but one to be aware
of).

The point is that a renderer could look at the closure list and deduce
some interesting things about the materials. For example, if there is no
"transparent" closure present, the material must be opaque
everywhere. (No need to run the shader on shadeow rays to determine
this.)  Other interesting optimizations may also be possible with this
kind of information.