slangmosh: Add support for resolving defines early.
slangmosh: Add support for resolving defines early.

Cannot create unsupported SPIR-V, only create modules that will actually
be used. Also make generated code a template, so it's more reusable.

Themaister/Granite,Themaister/Granite,Themaister/Granite,Themaister/Granite,Themaister/Granite,Themaister/Granite