RewindBuffer: Add header and extend tests

* Add header to dumped rewind buffer giving stream key and chunk duration.
  Update dump and read functions to recognize header.
* Extend RewindBuffer tests to include pumping data and dumping and loading
  the buffer
Abstract RewindBuffer storage

* Goal is to make it where you can plug in the MemoryStore or a RedisStore
  (or something else in the future)
* Implement MemoryStore—tests pass, but haven't really tested it otherwise
Fix HLS Segmenter Test

* Fix HLS Segmenter test's use of RewindBuffer
* Add support for passing `log` in to RewindBuffer via opts