Pass http session to get_stream

- The get_stream function can now take a requests.Session()
  as optional argument. This helps using HTTP parameters
  such as custom headers or cookies in requests made by the hls.py
  module
Rewrote hlsdump

- rewrote hlsdump to split work into threads
- Dropped all timing based magic, just poll the
  playlist every target-duration
- New naming scheme for files includes URL hash
  as prefix
- Background worker retries to get failed segments
- the hlsdump arguments are now inverted