Reworked loop in its logical order
Merge branch 'timeout_on_connect' into disablebind
Merge branch 'cleanselect' into disablebind
Changes to make connect more robust
Merge branch 'master' into disablebind
MPW_EMPTY is correctly initialized

MPW_Send doesn't fail with segmentation fault if MPWide is initialized with MPW_CreatePath/MPW_CreateWithoutConnect
since MPW_EMPTY was initialized in MPW_Init, which isn't called with MPW_CreatePath.
Ignoring build products in git
Merge branch 'master' into disablebind
Server sockets are handled internally to Socket and connect/accept uses blocking socket

As a consequence, the code more consequently assumes that after connecting, the socket
is non-blocking, as is the case in the MPWide code.
Shorter channel calculation
Socket accept matches description
Socket::send and ::recv match description
Never mind the binding -- it's fine
Re-const-ed Socket::listen()
AddStreams correct when invoked multiple times

Before, if address was "0" and AddStreams is invoked
the second time, it would modify ```isclient[i]```
instead of ```isclient[stream[i]]```, for i = 0..num_streams.
Merge branch 'master' into disablebind
Socket now properly handles copies

This is needed since the vector datastructure
will sometimes copy objects.

Alternatively, vector<Socket> client could be defined as
vector<Socket*> and the Socket::Socket(const Socket& sock)
could be made private, thereby disabling it. If it is
not defined, C++ automatically generates it.
Use the 'stream' variable instead of 'i'

In a few places (notably InitStreams), there were bugs confusing
'i' as the stream number with 'i' as the iteration number. This
is unambiguized by using 'stream' if the stream number is meant
and 'i' if the iteration variable is meant.
Listen and accept more explicit failure messsage
Merge pull request #10 from blootsvoets/disablebind

MPW_Connect and MPWTest work