split up type_traits and mpl