1. Fix concurrency bugs with promises;
2. Split products and details functions
3. Use WDJ api instead of import.io for products sources