Only do a custom typedef of bool for MSVC

I changed the check for defining a non standard bool type to only be used with MSVC.
Doing so with mingw causes issues for the Go binding, as Go expects std bools to be used under mingw (As it is available)