allow custom range

This allows you to pass in `range` as a custom option. Currently if you try and override the range header it causes an infinite loop.