dashenc: Use pts for MPD timeline timestamps

This should be more correct. This also should give more sensible
switching between video streams with different amount of b-frame
delay.

The current dash.js release (1.2.0) fails to start playback of
such files from the start (if the start pts is > 0), but this has
been fixed in the current git version of dash.js.

Also enable the use of edit lists, so that streams in many cases
start at pts=0.
movenc: Check start_dts instead of track->entry to see whether all streams have been initialized

This is a preparatory refactoring, to allow flushing to write a
moov atom before the first packets have been written (as long as
the start times have been set).
RFC: movenc: Allow setting the nominal start time of streams

This allows writing a moov with an edit list even before the first
packet has been written.

This allows doing random-access writing of fragments when the
start dts of the stream isn't zero, so that the edit list in the moov
is written based on timestamps from the nominal start time set via
an option, while the first packet written corresponds to a later
fragment.

This is incredibly ugly - is there any better way of achieving
the same (private avoptions per stream)?
TEST/EXAMPLE ONLY: dashenc: Allow skipping writing some segments

To show how to handle random-access writing, allow skipping writing
earlier segments. No packets for the skipped segments are sent to
the actual mp4 muxer.