lots of windows only stuff, some constants in the constants file