SingleTile WMS layer requests an image with a wrong width to server

This PR addresses a regression introduced by 6ab0f32 (Override getImageSize function to take clipped images into account) (Sorry, I did mess up the original PR and recreated a new one.)

There are two issues when adding a new WMS layer in singleTile mode to a map:

1/ When adding, the `gridResolution` which is null by default is not initailized, as a result, the `getImageSize` function returns an image size with a width = 'Infinity'.
2/ When zooming in/out the `gridResolution` is not updated, resulting in an image of the wrong size, either too small when zooming in or to large when zooming out. The image height is correct in all case.


Comment from @ahocevar on original PR:
`this.gridResolution` is set at the bottom of `initSingleTile()`. Wouldn't it be sufficient to move that to the top of `initSingleTile()`?