Use the new libavformat functionality for marking keyframes.
Note: This depends on code only recently in mainline avformat;
the commit in question is
dbbaad3 in libav,
4e7a921 in ffmpeg,
merged Jun 23.
This removes our need for manually flushing before each keyframe
to to make sure we get the fragment boundaries correct. In turn,
this means we no longer need to interleave ourselves.
The lack of flushing (and that we start using libavformat's interleaving
queue again) also means that the muxer no longer has to guess at the
duration of the last frame in each fragment, which would sometimes
cause non-monotonic pts, which would confuse players in various ways.