extensions: Refactor extension system for asynchronous loading
The goal of this MR is to make it possible for extension loading to occur asynchronously. This is necessary for ES modules to be used for extensions.
Quoting the commits...
extensions: Refactor extension system for asynchronous loading
This commit refactors extensionSystem to load extensions
asynchronously. This will enable loading extensions using ECMAScript
modules in a future commit.
fileUtils: Refactor collectFromDatadirs to be a generator
This change enables mapping each collected file to a Promise in
asynchronous operations.
Edited by Evan Welsh