Clean up harpoonctl create/start

- The timeout parameter isn't, semantically, a download timeout, but
  rather a complete operation timeout. Change the name to reflect that.

- Wrap and format comments.
Implement harpoonctl run in terms of create

This simply breaks out the common code between run and create into a
separate function, and invokes that function with one parameter to
control starting/not-starting behavior.
Merge pull request #140 from soundcloud/run-in-terms-of-create

Run in terms of create