Pull in Stream Groups

Stream groups is a minimal grouping implementation to support HTTP Live Streaming master playlists. 

This implementation will probably be thrown out later when a more fleshed-out stream variants concept is put in place, but it gets the job done for now.  It adds `group`, `bandwidth` and `codec` attributes to streams, and adds client-side logic for identifying stream groups and serving up master playlists.