Removing logic that assumes occasionally stretched tiles

When the dom renderer included logic to stretch tiles so that gaps were properly filled for fractional zoom levels, we needed to take this into account when getting a tile coordinate for a given coordinate and resolution.  This was never the proper logic for a renderer that wasn't stretching occassional tiles (e.g. the WebGL renderer, the Canvas renderer, or the new DOM renderer).
Making it explicit that this is a range of tiles

With tile range extending rectangle, a tile range that represented a single tile was not allowed.
Correct range for extent and resolution

Tile ranges are inclusive.  When getting the tile range for an extent, the top-right corner of the extent should be considered with a different intersection policy than the bottom-left corner.
Sharing code with rectangle

We cannot use the rectangle constructor here because a rectangle makes an assertion about min being less than max and a range may have equal min/max.
Merge pull request #207 from tschaub/tilerange

Make tile range calculation consistent.  Tile ranges are always inclusive in their min/max values.