It looks like the work on the new JSAN transport/indexing/installation layer is finally starting to pay off.
Even though it can't handle which mirror you want yet, JSAN::Client is done enough to use now. Just create a client object, and ->install_library('Module.Name') and it will Do What You Mean.
The transport layer uses all the appropriate mirroring and file-won't-change optimisation goodness to minimise traffic and requests, and the index integrates with Algorithm::Dependency properly.
It's almost magical.
Of course, once you've got a working index/installer, what's the first thing you have to write?
MiniJSAN! With the spiffy indexer code working it only took about 20 lines to get it working. So now (once JSAN::Client supports an --offline flag to it doesn't try to refetch the index) you can just run minijsan nightly, and do the whole "installing modules on an plane" dance with JSAN modules :)