We'll probably want to add some kind of mechanism to specify a source blob once and the reference them multiple times. You could e.g. imagine something like this:
This feels a little too unwieldy for our current needs, I'd say. I would content of having a `[shaders]` section that behaves just as if a series of `[vertex shader]`, `[pixel shader]`, etc had been there, all using the same code, except that the entry point is `vs_main`, `ps_main`, etc for the functions that exist. That means that later you can replace the shaders individually, even if at that point you have to rewrite the whole code. That seems to me a good strike between having to write less code in the common case and keeping the file format simple and not too verbose.