added a processing queue for parallel downloads and uploads; storage.js is now based on it