launchBrowser(config: Config): Promise<Browser>
Launches a browser for the given config.browser type.
For chromium: connects via CDP to the pre-launched Chrome (fast path) or falls
back to chromium.launch() if pre-launch failed.
For firefox/webkit: uses playwright's standard launch (requires npx playwright install [browser]).
config: Config