Cool, that looks like a pretty good tutorial

Have you ever worked with matrixes/matrices before?
One way of looking at a 2d rotation is in a matrix
If you build a 2x2 array like this
dim rotate2d(2,2)
rotate2d(0,0)=cos(angle)
rotate2d(1,0)=-sin(angle)
rotate2d(0,1)=sin(angle)
rotate2d(1,1)=cos(angle)
That is a 2d rotation matrix.
Then to do a 2d rotation on a (x,y) position, you can do this
dim point2d(2)
point2d(0)=x
point2d(1)=y
dim output2d(2)
output2d(0) = point2d(0) * rotate2d(0,0) + point2d(1) * rotated2d(0,1)
output2d(1) = point2d(0) * rotate2d(1,0) + point2d(1) * rotated2d(1,1)
Effectively that multiplies each row in the matrix with input vector to give you a rotated vector.
Thinking about it this way makes it more easy to look at how to extend it in to 3d. For instance you can combine 2 matrices together into a single matrix in such a way that the two rotations they represent are added together, one after the other. A 3d rotation matrix is just a 2d rotation around the x axis followed by a 2d rotation round the y axis followed by a 2d rotation about the z axis.
Jim