Enhance import error reporting

This PR
* breaks the sra import code into more functions
* does extra error checking around chdir(), the validation helper, and around shellcmd()
* also adds logic to handle the case where bam has an alignment but no unaligned reads
Does `&>` still work without a filename afterwards?