moved LineIn over/under run detection our of platform specific classes, making LineIn less virtual.
refactoring IAudioClient handling into a common base class