Use a 'count leading' function in 3 sources that use it. Create a Math.h to store math utils.

There are quite a few other functions that could be placed in to this new util file. Hopefully it gets some love.

As for touching Gte.cpp (for the first time in 11 years): well, if you're keeping it -- may as well improve it.

If we are concerned about performance on Windows, we should probably use the lzcnt intrinsic but it is difficult to explain (too many comments) how it turns in to BSR on CPUs that don't support it and apparently it won't get accepted anyway.
So you want me to pull in headers so that u32/s32 is defined?

Which headers, in particular, should all headers include?