move header files into subdirectories
fix includes