player: fix time display wheen seeking past EOF with --keep-open

Regression since commit 261506e3. Internally speaking, playback was
often not properly terminated, and the main part of handle_keep_open()
was just executed once, instead of any time the user tries to seek. This
means playback_pts was not set, and the "current time" was determined by
the seek target PTS.

So fix this aspect of video EOF handling, and also remove the now
unnecessary eof_reached field.

The pause check before calling pause_player() is a lazy workaround for
a strange event feedback loop that happens on EOF with --keep-open.
demux_mf: allow seeking past the end

How's this for a corner case.
audio: cosmetics: remove unused return value
audio: better initial sync for files where audio starts later

Some files have the first audio much later into the video (for whatever
reasons). Instead of appending large amounts of silence to the audio
buffer (and refusing to sync if the audio to append is "too large"),
just wait until enough video has played.
stream_lavf: allow setting AVOptions with --stream-lavf-o

This commit also creates a private option struct for stream_lavf.c, but
since I'm lazy, I'm not moving any existing options to it.