hammerlab/guacamole — pull request #245 by ryan-williams (2014-11-21 16:51:34+00:00)
Title: Move Command boilerplate into SparkCommand

There are a few things happening here:
* `Command` is now parameterized by an "Arguments" class
* `Command.run` takes an instance of that Arguments class rather than raw `String` args
* All of our callers are now `SparkCommand`s
* They take a `SparkContext`
* Important: you don't have to manage `SparkContext` lifecycle!
* History server fix (`sc.stop()`) is [included](https://github.com/ryan-williams/guacamole/commit/6110f8ee7ffcc6bd0043391ca5313a237a7b63c7).
* The [first commit](https://github.com/ryan-williams/guacamole/commit/44fc3d4a4c66bc6d6e8c0bf670d7cb70ab378a71) basically changes whitespace in all the callers and made for messy diffs, so you might prefer to look at each commit separately.