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.
Do you want to use `listenOnce` here? I guess that shouldn't make a difference.