So I've been snowed for a while, just had a chance to work some more on this, I've solved the re-downloading problem bespoke-to-pdf uses nw-shot (which was created for bespoke-to-pdf). nw-shot is what triggers the nw.js download, that's now managed by install-nw which I made for this purpose (https://www.npmjs.com/package/install-nw)
It downloads the NW.js zip file to ~/.nw-cache (configurable), and then creates a local server for the nw module to download from. For extra measure I threw in multi threaded downloading (8 connections) and download resuming.
Hopefully I'll get some more time soon to translate all of this into bespoke-pdf