Special lazyMap() like Array's map(), but each loop will check if new task is pushed in todo queue inspired by window.requestIdleCallback()