Remove include of windows.h from allocators.h

Create an allocators.cpp, and move all of the #ifdef WIN32
code and the #include of windows.h into it.

Two motives for this cleanup:
1. I'm getting a weird error in windows.h in my smartfee branch.
2. allocators.h is included (indirectly) just about everywhere, so
this should speed up Windows compiles quite a lot.
Merge pull request #3071 from gavinandresen/windows_h

Remove include of windows.h from allocators.h
prevent compiler redefinition warnings

- I observed a massive amount of redefinition warnings after #3071, which
  are silenced by this patch
- uses the same style as we do in other places, where we define _WIN32_WINNT
Merge pull request #3081 from Diapolo/silence_compiler

prevent compiler redefinition warnings