Implement GetPosition for OpenAL streams, and display it in the stats
Get the length from sounds when possible
Use AL_SOFT_deferred_updates to sync updates when availeble
Fix calling SetPosition when not playing
Rename some FMOD references to be generic sound system

Since they relates to other sound backends as well, there's no need to single
out FMOD in these places.
Work around a libsndfile bug related to converting float samples to shorts

Do the conversion ourselves to ensure it's properly clamped.