dvdplayer: move selection of video reference clock to dvdplayer

CDVDPlayer is now the master of clock selection even in the
video reference clock case. This avoids the data transmission
between audio and video players for clock selection.
dvdplayer: add accessor for current clock speed adjustment to dvdclock

This avoid direct access to video reference clock in players
dvdplayer: drop StreamLock section that doesn't protect anything anymore
dvdplayer: drop unused last sub variable
dvdplayer: drop some old OnExit debug logs
dvdplayer: drop parameter from CheckPlayerInit that is part of other
dvdplayer: factor out check for selected stream
dvdplayer: add wrapper around Open(*)Stream based on CCurrentStream

This allows several code deduplifications.
Revert "[pvr] provide fps hint from pvr demux if available"

Hints is already filled with rate/scale from the construction
of the hints object from the stream.

This reverts commit dd237e82e0149d305fd0886485dc78252389ee16.
dvdplayer: move sync after clock switch to UpdateClockMaster
dvdplayer: factor out common code from Open(*)Stream
dvdplayer: factor better stream checks
dvdplayer: factor out stream change detection
dvdplayer: make sure we setup changes variable properly on open
dvdplayer: add generic interface to dvdplayer stream players
dvdplayer: generalize Close(*)Stream functions
dvdplayer: factor out part of openstream code
dvdplayer: let Discontinuity function take absolute timestamp and log

This allow caller to re-use timestamp that calculations where made on
to reduce effect from task scheduling and avoid logging corrections done.
dvdplayer: use master clock as basis for player to sync clock

TODO: move this into the players so they check on reception of packet
if they are the master of the clock.
dvdplayer: don't signal audio started before we have output a packet