@kbarber : these three lines are the meat of this.  We need a way to basically do a parallel map operation, but the "producer" (reading from the tarball stream) *must* be single threaded.  As it generates work from the tarball, we *can* safely parallelize the command submission.

After we get your other pull request merged, it might be worth dusting this branch off and rebasing it against our new master branch, so that we can at least time the import with this stuff in place and see if it makes a difference.  It may be the case that the bottleneck here is simply reading from the tarball, and that there isn't much room for optimization... not sure.