Fixed some bugs handling range requests.

* End-of-range past end-of-content is not an error; just pin it.
* Fixed a crash when there are ranges given but all of them are no-ops
  and self.range ends up a zero-length array.