Don't compare socket results to -1 but to INVALID_SOCKET
Fix memory leak
Move variable declarations to point of first use.
Don't leak sockets on error
Comment formatting.
Clients now bind to a single interface instead of 0.0.0.0.

This should help avoid problems with the Windows firewall.
Clients broadcast UDP messages at the VRPN server with their hostname
and the TCP port number they're listening on. The server connect's to
the client's TCP port when it receives those messages.

Previously, the client listened on all available interfaces (0.0.0.0)
for the server's connection. This caused the Windows firewall to ask
permission before allowing the connection to complete.

By having the client listen only on a single interface (the interface
used to communicate with the server -- 127.0.0.1 for local servers), we
should escape harassment by the Windows firewall.
Removed extra variable.  Changed from snprintf (which is not available on Visual Studio 2008) to sprintf.  Adjusted comments to match behavior on Windows.
Setting the classic 'C' locale when parsing vrpn.cfg to avoid things like commas for decimal points.  Sets the locale back to the original state (I think, hard to test this) when done parsing.