make the includes architecture more consistent