Init transport if nil when registering custom certificate
Created by: jeremy-clerc
Commit ae5c19aaf3e6edb46f7845ce093c47010d93c043 introduced parametized http client, the order used in httpcli.NewFactory makes NewCertPoolOpt called first, but its http.Client.Transport is not initialized yet.
This commit initialized http.Client.Transport to http.DefaultTransport like in NewCachedTransportOpt and TracedTransportOpt.
Fixes #3523
Test plan: Add an external service with a custom Certificate Authority or self signed certificate.