First pass, mostly a copy of nmilford/stormLauncher