Only try to get artwork if we have a valid track object
Fix "cannot request non-http url" issue when bringing up the context
menu on a remote stream

We only keep a small in-memory cache of RemoteTrack objects. Therefore
we can end up with a track which has a trackId, but no corresponding
object. Fall back to the stream's URL if we fail to get a track object.
Merge branch 'public/7.7' into public/7.8