more header refactoring