scene: use systems rather than event-propagation for drawing

This is not finished. Just to show the direction in which I'd like
to go, but we should probably discuss the role of Document and ViewBox,
and whether/how to use systems.
cleanup a bit, addressing some comments of Luke
scene: First step towards what I think is a good ViewBox
scene: first version working with new viewbox/drawing mechanism.

Only draw viewbox via vierport yet.
scene: viewbox now works via a transform
gloo: fixes to framebuffer
(is this thing even tested?)
scene: viewbox now works via FBO!

Although in a sort of hacky way.
We now have all three ways implemented.
scene: cleaning up and doc
scene: bit of refactoring and cleaning

the PaintEvent is now pretty nice IMO. The DrawingSystem very nimble, which
I also like.
scene: Fix all visual examples
scene: Add Entity.parent

It raises an error if it has multiple parents.
scene: remove parent_transform
scene: refactored to use continuous scenegraph with SubScene

Code is a mess, but it took me a while to get here,
so I am "saving" now.
scene: flip y-axis in pixelCamera. Add support for viewport.

Also some cleaning
scene: wip

Working on FBO, but am stuck, now I start to think that the
`reversed` in full_transform is wrong ...
scene: ChainTransform(a,b) == a*b plus many tests
scene: implemented fbo and viewport clipping methods.

They can also be combined.
scene: some cleaning and remove ViewBox.camera

Use ViewBox.scene.camera instead
scene: rename SceneCanvas.root to SceneCanvas.scene
scene: fix that visual examples work again