zink: more codegen improvements
This MR adds (more) validations to the codegen in zink.
- No more device extensions in zink_instance.py, and vice versa
- No more error message dumps from the C compiler when the extension names contain typos
- Similarly, no more accidental has_properties/has_features in zink_device_info.py
Furthermore, we finally can use VK_KHR_shader_draw_parameters on Vulkan 1.0 and 1.1. :D
Close #4031 (closed).
Edited by He Haocheng