Refactor raster rotation support. This time it works correctly.

Basically the QgsMapToPixel is "unrotated" for the calculations
in the renderer. Rotation is later inducted during draw.