Implements HTTP range request support

It shall cut some initial downloading time. We still scanning all pages at random file locations. If we adjust our viewer to request only few pages initially, our initial download time will be even less.

Use `#disableRange=true` to disable the feature. I was surprised to find lots of servers on the web that supports range requests.