Fix issues with ALSA OSS backend for firefox and chrome.
- When read() or write() fails due to EAGAIN because no buffer is available or buffer is full, return 0 instead of failure. Else clients may simply close the device and re-open it instantly chopping the audio.
- Implement OSS delay function to fix an issue with negative delays.
- Use at least 16ms of HW buffer by default to avoid jitter.
Approved by: pi, jbeich