Determine image size on load

This makes it so the image size does have to be provided for static image sources.  If not provided, the size is determined when the image loads.

If a `ol.source.ImageStatic` is constructed without an `imageSize` option, the source is given the "loading" state and image loading is triggered.  When the image loads, the image resolution is calculated, and the source is given the "ready" state.

Fixes #2767.
If no image size was provided in the options passed to the constructor then `undefined` will be passed the parent constructor for the `resolutions` option. Looking at the code I don't think this a problem, because  `ol.source.ImageStatic` doesn't use `ol.source.Image#findNearestResolution`. For clarity it may make sense to not pass `resolutions` to the parent constructor.