restructure with header.cpp

all module now includes header.cpp