HTTP Live Streaming Support

__This isn't ready to merge, just a place for discussion.__

This work adds support for HTTP Live Streaming output, adding the concept of "stream groups" and forcing a rebuild of the old request logging pipeline.

HTTP Live Streaming uses index playlists and short requests for chunks of audio rather than the measured long-lived output of Shoutcast.  Listening sessions must be synthetically constructed after the fact by piecing together the individual requests.