header files restructure