Workaround MinGW __declspec(align(x)) bug
Separate the resampling and mixing steps
Remove some unused code
Remove STACK_DATA_SIZE in favor of BUFFERSIZE
Move the target effect slot to the SendParams struct
Implement MixDirect_SSE separately from the C and Neon versions
Use SSE to do 4 samples at once (non-HRTF direct mix), instead of to apply a matrix row

MaxCHannels no longer needs to be a multiple of 4 now, either.
Use the right method to clear a __m128 to 0
Try to ensure mixing samples in multiples of 4
Add missing returns
Remove a hack for MinGW
Again try to get _WIN32_IE to behave right with MinGW
Update HRTF code

This update allows for much more flexibility in the HRTF data. It also allows
for HRTF table file names to include "%r" to represent the device's playback
rate (e.g. if you set hrtf-%r.mhr, then it will try to use hrtf-44100.mhr or
hrtf-48000.mhr depending if the device's output rate is 44100 or 48000,
respectively).

The makehrtf utility has also been updated to support more options and input
file formats, as well as the new mhr format.
Add example HRTF definition files for makehrtf
Silence a couple MSVC warnings
Use HUGE_VAL instead of dividing by 0 for infinity, where possible
Do the filtering separately from the mixing
Use a non-interleaved DryBuffer
Don't use count-specific functions to write to the output buffer
Minor cleanups for variable declarations