move structs, defines, and such to header