Add repartition parameter

Coalesce doesn't currently perform as documented since all of the transformation operations happen after it so you never actually get the proper number of output partitions.

I added a repartition at the top of the job to remap the data to more or less partitions (this helps with increasing parallelism) and moved coalesce to the end to create the proper number of outputs (can it go after the sort?, not sure the expectations on output are after the sort)

Also, moved both parameters to SparkArgs as they are likely to be needed in other operations (i.e. reads2ref) There may be better defaults too, but since they both add some overhead they are off by default