Modeller Chapter

This is my first draft of the Modeller chapter. It's my first time attempting technical writing; I expect many iterations will be required.

I have a few major questions to ask from reviewers/editors:

##### 1. Linear Algebra
I'm not sure how much depth to go into regarding the linear algebra for the modeller. OpenGL linear algebra could easily fill a chapter on its own, depending on how much background knowledge is assumed.

For the most part, it's basic Matrix arithmetic (Matrix * Matrix, and Matrix * Vector), but there are a few cases where the arithmetic is non-obvious:
- Using a 1 or 0 in the 4th dimension to distinguish between points and vectors.
- The arithmetic behind the projection matrix
- The relationship between Model, View, and Projection matrices

One option for us would be to point to existing explanations of OpenGL linear algebra, for example [opengl-tutorial.org](http://www.opengl-tutorial.org/beginners-tutorials/tutorial-3-matrices/#The_Model__View_and_Projection_matrices).
Alternatively, I could write up an introduction to some of the relevant arithmetic.

##### 2. OpenGL description
I tried to give a description of the differences between Modern and Legacy OpenGL, to illustrate the motivation for choosing Legacy OpenGL. I'm afraid it's a rather dry section. Do you think it's necessary to keep it? Should I move it to a different point in the chapter?

I'll continue to iterate on the chapter; please let me know if you have any suggestions.
Thank you very much!

Seeing both `init_scene` and `initial_scene` in sequence is a little jarring. It took me a second to figure out that the former is a general initialization routine, whereas the second is creating a sample scene graph for the purposes of this demonstration. I might rename this to 'sample scene`. Alternately, could we move this method out of the class altogether, and just specify it as a simple function that constructs a scene and then passes it to the viewer in the constructor?