Cleaning up mpileup command

This just cleans up the mpileup command to separate out the context handling

A few questions:
1) Does this command still have utility? Also is its only utility in local spark?
2) If so, should we combine PileupTraversable and the other pileup processing since both seem to implement the same read to pileup parsing