Enable use of static archives in place of object merging
Unfortunately, lld's COFF backend does not currently support object merging. With ld.bfd having broken support for high image-load base addresses (see #16780 (closed)), it is necessary to find an alternative.
The alternative that I implement here is for the MergeForeign driver task to produce a static archive instead of merging objects when the linker does not support the latter.
Builds on top of !7528 (closed).
Closes #21068 (closed).