These are used within a file-scope lookup table in urde. Without this, technically those constructors are runtime static constructors. This allows the compiler to initialize them at compile-time.
Ensures all necessary includes are included and also removes headers that aren't necessary