Chromecast global availability method `cast.available`

Fix for Chromecast availability in environments that report casting capability before view is ready. [Fixes #74735688]
We should check if *available* is a function before invoking it, as opposed to just checking if it exists.