There are two other parts, here: https://blog.cgcookie.com/forums/topic/conors-blender-progress/
and here: https://blog.cgcookie.com/forums/topic/my-progress-in-blender/
I’d be happy to explain it better if there are still things you don’t get.
In a nutshell, the 4 values in a quaternion are not like the 3 values in euler.
A quaternion is an expansion of a complex number. A quaternion called h is normally written as: h = (a + bi + cj + dk).
(Unfortunately, in Blender and other 3D software it is written as w, x, y, z ,which make it look like coordinates in a 4 dimensional space.)
A quaternion rotation is actually a multiplication of quaternions.
Blender interprets the coordinates (x, y, z) of the point that needs to be rotated as a quaternion: (0 + xi + yj + zk) and than it’s just a matter of multiplying (quaternion) numbers to get a 3D rotation.
All you need to do that is a few rules: i*i = j*j = k*k = -1.
And: i*j = k, j*i = -k
j*k = i, k*j = -i
and k*i = j, i*k = -j.