Expose sandbox ports and tolerate failures
Make BaseSandbox.expose return string | null and handle exceptions in
the Cloudflare provider so failed exposes don't crash startup. Query
sandbox_ports when starting a sandbox and expose each port using the
request hostname.