fix headers to utilize include guards, else all hell breaks lose easily

when someone tries to use them.

cherry picked because github merge is a fucking retard
(cherry picked from commit 76e0b93999b38de024631d5c60b2c1b65f33a81f)