Fix schedule gen to panic only if non-root array types/constants are used
My solution is to change the lists of schedule types and constants to be lists of options, and then in the conversion functions we produce None
for types/constants with non-root arrays.
This means we don't actually have to determine all of the used types/constants ahead of time and we can just panic when we try to use an invalid type or constant.
With this fix, Juno matmul can build and run.