src/vs/base/common/async.ts/Sequencer/queue
class Sequencer:	queue<T>(promiseTask: ITask<Promise<T>>): Promise<T> {
		return this.current = this.current.then(() => promiseTask(), () => promiseTask());
	}