Added basic_vec4
Added vec hash functors
Started work on matrix library
Made basic_vec types specializations of one common type
Made basic_mat2x2 more generic as basic_mat2xN
Reduced code duplication
Re-organized vec files
Re-organized mat files
More work on mat library