handle HTTPS URLs and fix API key stuff

Right now, a few videos contain a video detail URL that specifies https as its protocol. This results in a "no service found for URL" error.

Also, the ApiKey function wasn't available when this was running in a sandbox (and nor was the key in Prefs), so playing videos didn't work if the API returned a HD resource. Since we're sending it in the function call anyway, I'm just extracting it from the URL with a regex and reusing it.

I guess these should technically be separate PRs, but they're tiny changes, so... yeah.