Moves type_traits into own header