more webworker goodness with promises