Added WINDOWS support for watchpoints

Actually it mainly works by just a bit macro substitution and function
redeclarations.
So it leaves the code working on UNIX mostly untouched.

I needed to substitute the allocating functions by a Virtual*() functions
wrapper to use VirtualProtect() on the memory.