Added mpileup tests
Mpileup test in Makefile
Avoid bashisms
Abort if an INIT command fails; dispose of _out file
Testclean and ignore temporary and output files

For cases 15 and 35, use a more self-explanatory temporary file name.
Use hts_set_threads() rather than bgzf_mt()
Report sam_write1() and sam_close() errors

Checking the return value from sam_close() detects CRAM writing complete
failure (e.g., due to missing references) for short CRAM files with only
one container or block.

This makes "samtools view -H foo.cram" fail due to infelicities in
EOF detection (see issue #150), so the corresponding test case is
for now marked as expected fail.
Merge mpileup tests (PR #187)

These tests require corresponding reference sequences to be available
via $REF_PATH or similar.  One day the test harness should arrange this
itself; for now, we run these tests only when $REF_PATH is non-empty.
Eventually this guard (see [ -n "$REF_PATH" ] in the Makefile) will be
able to disappear.

Test case #51 now succeeds, so is no longer marked as expected fail.