Initial working ALSA back-end (minus the parts that aren't working yet).
Minor cleanup
Merge branch 'master' into alsa_v2