Consistent naming

[According to the RFC](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.16), `start/offset` is called `first`, `end` is called `last`, `name` is called `unit`, and `count` is called `length`.

Also, `format` also accepts `end` instead of `limit`. With this change, `format` is now the inverse function of `parse`, so:

```js
contentRange.format(contentRange.parse(rangeSpec)) === rangeSpec
```