fix(install): use CliFileFetcher + X-TypeScript-Types for http modules
Replace the curl-based remote module mirror with the standard
CliFileFetcher (reuses DENO_DIR cache, follows redirects, exposes
headers). When a module advertises types via X-TypeScript-Types
(esm.sh and friends), fetch the .d.ts URL and mirror it instead of
the JS source, then point the tsconfig paths entry at the .d.ts.
Avoids the file-vs-directory collision that occurred when both the
JS source (e.g. cowsay@1.6.0) and its types file (cowsay@1.6.0/
index.d.ts) needed to share the same path prefix on disk.