fix Euler.setFromQuaternion bug - see #5659

Simple fix for #5659 based on the technique employed in ILM's math library.  It reduces the amount of code in ThreeJS but it is slower than the old approach.  See #5659 for full dsscussion of the reasoning behind this fix.

Three Math Unit tests pass.