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!

Why doesn't the `call_list` just live in `Node`? What is the purpose of the `Primitive` base class? That doesn't seem to be explained immediately after this section.