reorganizing headers and includes