Integrate audio validation and upload

fixes some bugs, and integrates validation with the upload.
see commit messages.

ditto.