Add scale.quantize.invert

I think it'll be nice to be able to invert quantize scale.

## Use Case Scenario 

In a visualization, I am using a quantize scale to map a period of time into several segments. The scale gets a `Date` object, and outputs which segment the date belongs to. Now I want to visually mark the time segments, therefore I have to know when each of the time segments start and end. I think the scale should be able to provide such information.

## Documentation

**quantize.invert(y)**

Returns the interval in the domain, represented in two-element array, for the corresponding value in the range *y*. For any valid *y* in the range, any *x* within the interval [`quantize.invert(y)[0]`, `quantize.invert(y)[1]`) should satisfy `quantize(x) === y`.

If *y* is not unique in the range, the function will return the first extent in the domain that maps to *y*. If *y* is not in the range of the quantize scale, the function will return a meaningless extent.

## Usage Example

```javascript
var q = d3.scale.quantize()
  .domain([0, 10])
  .range(d3.range(5));

q(2);  // => 1
q(3);  // => 1
q(3.9);  // => 1
q(4);  // => 2

q.invert(1);  // => [2, 4]
q.invert(2);  // => [4, 6]
```