_pysam_dispatch: attach fds only for the collection to be executed
_pysam_dispatch: attach fds only for the collection to be executed

Only use samtools_set_stdout/_stderr if we're going to run samtools
(and similarly bcftools_set_stdout/_stderr if we're going to run
bcftools), so that the underlying file descriptors are not shared
by multiple FILE pointers.

This simplifies things and avoids failing fclose() calls due to
shared fds already having been closed; occasional ignored fclose()
failures will still occur due to e.g. samtools bam2fq which closes
its own stdout itself.

pysam-developers/pysam,pysam-developers/pysam,pysam-developers/pysam,pysam-developers/pysam