>> The first part of the article about describing sphere rotations with a direction and magnitude has some overlap with quaternion rotations
Some? Scale the direction vector (x,y,z) to have magnitude = sin(theta) and then set w = cos theta, where theta is half the desired rotation angle. Then (w,x,y,z) is the quaternion that represents the rotation. It was hard for me to read without that relationship constantly popping into my head.
The second part of the article about untangling strings after a 720° turn is also covered in: https://www.youtube.com/watch?v=JaIR-cWk_-o ; https://www.youtube.com/watch?v=Nat-EsReXtQ ; https://www.youtube.com/watch?v=O7wvWJ3-t44 ; https://www.youtube.com/watch?v=Rzt_byhgujg