Assertion failure when map's div is 0x0 pixels

As discovered by @icfm [on the mailing list](https://groups.google.com/d/msg/ol3-dev/s_N0850gF_E/kJQXEjZAriAJ), if the map's DIV has zero size then various assertions fail when the map is created, depending on the renderer.

This can be easily reproduced by editing `examples/simple.html` and changing the map's DIV tag to:
```html
<div id="map" class="map" style="height: 0px; width: 0px;"></div>
```

The WebGL renderer gives:
```
Uncaught AssertionError: Assertion failed asserts.js:102
goog.asserts.doAssertFailure_ asserts.js:102
goog.asserts.assert asserts.js:117
ol.math.roundUpToPowerOfTwo math.js:39
ol.renderer.webgl.TileLayer.prepareFrame webgltilelayerrenderer.js:158
ol.renderer.webgl.Map.renderFrame webglmaprenderer.js:480
ol.Map.renderFrame_ map.js:1094
goog.async.AnimationDelay.doAction_ animationdelay.js:230
goog.async.AnimationDelay.fire animationdelay.js:192
ol.Map.render map.js:936
ol.Map.handleViewChanged_ map.js:869
goog.events.EventTarget.fireListeners eventtarget.js:289
goog.events.EventTarget.dispatchEventInternal_ eventtarget.js:388
goog.events.EventTarget.dispatchEvent eventtarget.js:203
ol.Object.notifyInternal_ object.js:391
ol.Object.set object.js:422
ol.Map.setView map.js:1170
ol.Object.setValues object.js:440
ol.Map map.js:333
(anonymous function)
```

The Canvas renderer gives:
```
Uncaught InvalidStateError: An attempt was made to use an object that is not, or is no longer, usable. canvaslayerrenderer.js:55
ol.renderer.canvas.Layer.composeFrame canvaslayerrenderer.js:55
ol.renderer.canvas.Map.renderFrame canvasmaprenderer.js:172
ol.Map.renderFrame_ map.js:1094
goog.async.AnimationDelay.doAction_ animationdelay.js:230
goog.async.AnimationDelay.fire animationdelay.js:192
ol.Map.render map.js:936
ol.Map.handleViewChanged_ map.js:869
goog.events.EventTarget.fireListeners eventtarget.js:289
goog.events.EventTarget.dispatchEventInternal_ eventtarget.js:388
goog.events.EventTarget.dispatchEvent eventtarget.js:203
ol.Object.notifyInternal_ object.js:391
ol.Object.set object.js:422
ol.Map.setView map.js:1170
ol.Object.setValues object.js:440
ol.Map map.js:333
(anonymous function)
```

The DOM renderer doesn't complain.