Remove bpm==0 check from bpmcontrol.cpp
Define WIN32 when including shout.h.

Fixes the Windows build that I broke when removing the WIN32 define
while upgrading soundtouch.
Delete obsolete include directives
New SoundSource/AudioSource API

This is the first step towards a better/cleaner SoundSource API.
The operations for reading audio data have been moved into the
new abstract base class AudioSource.

Currently SoundSource inherits from AudioSource for technical reasons.
This is too much much coupling that needs to be broken up. I have
already some ideas on how to resolve it, but first this work needs to
be integrated.

During the refactoring I've noticed, that the quality and maturity of the
audio decoders for different file types greatly varies:

Good/mature:
- FLAC
- Ogg
- Opus
- WavPack
- libsndfile

Mediocre:
- MP3

Ugly/inefficient:
- M4A
- ModPlug

Untested AudioSource API:
- Apple CoreAudio
- Windows Media Foundation

Unfinished AudioSource API (just a hack):
- FFmpeg

Especially the code for the M4A decoder should be revised and cleaned up as
soon as possible, followed by a review of the MP3 decoder. Reading audio
data must work as stable and efficient as possible. This has priority over
the improvement of the internal software architecture!
Rewrite of the M4A decoder without legacy code
Slightly simplify the analysis of tracks
Initial cleanup of SoundSourceMp3 code
More SoundSourceMp3 optimizations and improvements
Move track metadata properties from SoundSource into separate DTO class
Fix missing FFmpeg initialization in unit tests
Move audio properties from SoundSource to AudioSource
Fix potential memory leak in SoundSourceOpus
Delete obsolete #include directives and other cosmetics