HLS: Rebuild index generation; Sync Segmenters in a StreamGroup

* Syncing an HLS Segmenter to a StreamGroup ensures that stream variants
  will align on the same segment. This is important when a client switches
  from one variant to another.
* HLSSegmenter: Add `syncToGroup` function and calls back to StreamGroup's
  `hlsUpdateMinSegment` function
* HLSSegmenter: Fix queue functions
* HLSIndex: Build a persistent manager for HLS indices.
* HLSIndex: Add support for `EXT-X-DISCONTINUITY` tags. Only give an
  `EXT-X-PROGRAM-DATETIME` for the first segment and after discontinuities.
* Slave.Server: Use new HLSIndex class for indices
* Slave.Stream: Emit `_source_waiting` when rewind load is starting
* Slave.StreamGroup: Add `hlsUpdateMinSegment` function to managing sync
Pin timezone version to fix deploy issue; Further throttle master rewind send