Add selftest project

Test pass OK!
Add tester project

Fix some const thing
Remove extern "C" for C++ projects

Also, inline was causing linking problems
Compile as dynamic library

Fix some include directories
Remove unneeded library ignore (LIBCMT)
Remove unneeded library include folders when possible
Temporarily fix linker problem with unresolved external

Remove when it makes sense
Also fix local vs. class context when creating agent
Remove unnecessary czmq library include (filemq includes it for us)
Temporary files and assertions
zre_peer class

Move data to myData member, keep opaque struct pointer
Fix peer constructor hashtable insertion

Define bad socket error
Opaque data type for node (the way it was before)
zre_udp class

Fix bad alloc/delete in node data
Proper cleanup of udp resources
Get rid of zcrx_interrupted hack

It only causes errors in release mode anyway
zre_group class
zre_log class
Fix DLL import/export macros

Sharing these macros across dependent DLLs is a bing no-no in Visual Studio.
Define DLL macros in platform.hpp
ISO conformance in zre_group
zctx_interrupted is a function now
Ignore testing binaries