extensionDownloader: Rewrite install to be async and compile gsettings schemas (if any) after install
Cleanup the code to be more modern by using async functions to do the downloading job, and then ensure that extensions providing gsettings files have a copiled schema.
The schema is currently often expected as shipped by the extension zip file, but while this works in the majority of the cases it's not either correct or expected:
- such zip files should contain only source files.
- gschemas files are endian dependent and may not work in the target machine
As per this, once the extension is installed, if it provides a schemas path, we try to compile it.