Fix segment timeline
Created by: AxelDelmas
This is an attempt to fix https://github.com/Dash-Industry-Forum/dash.js/issues/1916
Here's basically what's in this PR
- simplify TimelineSegmentGetter logic
- maxSegmentAhead is configurable using getSegmentsFromTimeline's last parameter
- Always return full list of segment when index === -1 and requestedTime isn't specified
- Use time based segment search when available, and fall back on index based when it's not