The angle between two unit vectors is not what I expected Ok imagine a vector with only X and Z components that make a 45 degree angle with the positive X axis. It's a unit vector. Now also imagine a unit vector that has the same direction as the positive x axis. Now imagine rotating both of these around the Z axis. 
I expect the angle between these vectors to still be 45 degrees. But it's not. If you don't believe me look here. Angle between two 3D vectors is not what I expected.
Another way to think about it is to draw a 45 degree angle between two lines on a piece of paper. Now stand the paper up, and rotate the paper. The angle between the lines are still 45 degrees.
Why is my way of thinking wrong?

The angle remains the same.
Let $x_1 = \frac{1}{2}(1, 0, 1)^T$, $x_2 = (1,0,0)^T$.
$\arccos (x_1^T x_2) = \frac{\pi}{4}$.
Now let $Q_\theta = \begin{bmatrix}\cos \theta & -\sin \theta & 0\\
\sin \theta & \cos \theta & 0 \\
0 & 0 & 1  \end{bmatrix}$. This represents a rotation of $\theta$ around the $z$ axis.
Note that $Q_\theta^T Q_\theta = I$. Then $\arccos ((Q_\theta x_1)^T x_2) = \arccos (x_1^T Q_\theta^T Q_\theta x_2) = \arccos (x_1^T x_2) = \frac{\pi}{4}$.
