Fixes #15.  Refactors the launch code to make it easier to add launchers and make the code more module and less dependent on globals.
Merge pull request #16 from pencilblue/story/CLI15

Fixes #15.  Refactors the launch code to make it easier to add launchers