moving more stuff out of types.h