Rearranging and adding win32 include dir

include win32 dir for includes which will have windows specific
posix wrappers, and move compiler options flag to compiler.cmake
Merge branch 'cmake_build' into win32_portability
More attribute specific fixes

porting compiler specific stuff is such fun
also first draft of win32 posix wrappers