Refactored volume control code.
Updated several codes after refactoring.
Updated some files attempting to fix overrun. Changed the static
variable for audio buffer to dynamically alloc so that memory
will only be allocated on the forked process rather than having
it always on the main process.
Updated removing all attempt to fix overrun. It shouldn't be
a problem as long as your sound configuration is correct.
Removed BUFFER_FRAMES constant and make it a run-time parameter.
Removed audio_common.*
Added back common.c to GIT which is a new file.
Don't use mutex on volume if using ALSA to set volume.
Start refactoring of syslog.
Syslog-ifization
Caught SIGTERM during daemon mode to kill avahi-publish-service
(or other MDNS process) before termination so that no outstanding
process would exist.
Added initial support for modular backend during compile time.
Refactor code.
Some more refactoring
Completed refactoring of codes.
Make with the following options

make AUDIO=alsa VOL=alsa

The above is default
AUDIO={alsa/ao}
VOL={alsa/soft}
Defaults to AO with alsa volume
Fixed libao initiation
Patched with commit 08477065972186327dba55ba0da92892c84b6c16 that
fix IPv4 fallback.
Revert previous commit that seems to introduce a segfault.
Merge pull request #2 from mikejuni/overrun

Merge pending changes that are stable enough to go back to master