Move render error events to Scene.

Also Viewer no longer has its own render loop, it just uses the one in
`CesiumWidget`.