quaternion: Make struct fields private

We don't allow direct access to the fields of complex, vector-based
types.