support 32Bit wave files, too. Why? Don't know... ;)
refactor reading