Adding eigen to build.
Updating Spire to use Eigen.

Being mindful of alignment issues in std::vector. We will need to use a
custom allocator if we use std::map.
Switching to GLM instead of Eigen.

The reasoning behind this decision is spelled out in Core/Math.h. In the
end, GLM is more time-efficient to work with -- although it may not be
faster than Eigen.
Add GLM 0.9.4.3 to the project as 3rdParty code.
Added GLM quaternions and reverted eigen-ized file.
All of spire library updated to GLM.

Still need to update tools.
Updating spire tools to glm.