Add tilePixelRatio option to ol.source.XYZ for #1905

This PR adds a tilePixelRatio option to ol.source.XYZ, where it was still missing.

It contains an example demonstrating the functionality. Code is inspired by #2216 (thanks @elemoine).

The discussion at #1905 about "High DPI (Retina) support for raster tile layers" is with this solved (but the MapBox specific ol.tilegrid).
While it is awkward, this should be `ol.extent.applyTransform` instead.  Adding `ol.proj.transformExtent` would be make for a slightly more convenient alternative.