Fixes to seek and error handling

Use milliseconds resolution for HLS playlist duration values.
Use binary search to find correct chunk in seekTo.
Forward errors to player/listener.