Full win32 port

Added full support for win32 (mingw / msvc)

Includes all test files.

This throws most of the compatibility hacks into libmongoc.  I'm not entirely happy with the socket/fd abstraction stuff, but it's significantly better than last time.  If we want to just get this in and iterate from there, I think it's solid enough at this point.