Fix an infinite loop when loading SF2 samples on big endian machines
Properly fill the SF2 sample buffer on big endian
Keep track of a device clock time, based on the number of samples processed
Add an alcGetInteger64vSOFT method and a way to get the device clock
Avoid duplicating code in alcGetIntegerv
Remove an unnecessary special-case for the click removal
Use nanosecond resolution for MIDI

This makes the MIDI clock use the same resolution as the device clock and
source latency and the device clock.
Rework MIDI clock timing

It's best to avoid using doubles in the mixer since the FPU's set to single-
precision mode. The new clock timing is similar to the device clock timing, and
should hopefully be less prone to drift caused by fp rounding errors.