va_{start,end} needs to be called for each vsnprintf
MSVC vsnprintf differs from POSIX

it returns -1 on truncation
if it returns sizeof(buffer), the buffer is not NUL terminated
fix vsnprintf usage
Merge pull request #166 from pijyoi/fix-vsnprintf

Fix vsnprintf for zmsg.c and zstr.c