handling the 'create paths' case during upload, and cleaning up the upload a bit with bluebird.