Changes to improve MSVC functionality

Previously wb.h was defining some variables which affect the behavior
of included files after including those files

Also, change CMakeList to not restrict the supported GPUS
define LAZY_FILE_LOAD for MSVC

To fix problems with datasets whose last line don't contain
a newline