Reorganize public header files (part 2)