Add the code from lecture 10

* Light interface
* Rectangle and point lights
* Depth-of-field support

All old scenes are incompatible, because we no longer have a single global light.
Only two scenes are converted at the moment.

More to come in a subsequent commit.
Ditto for comments and beautification.
Add the example scene from the lecture - some DOF on a book page.