Allow the specification of a directory to write the output BAM file to.

If not specified, the modified file will be written to the directory
the input BAM file is in.
Make the TopHat bug workaround conditional, it has been fixed in 2.0.9.
Catch up with the code.