Run nearly all tests on non hardcoded ports.
Run nearly all tests on non hardcoded ports.

The only hardcoded port left is on one in `testInvalidConnect`, which
expects a failure when the port is not opened.

The point of this patch is to minimize the probability of freak failures
due to collisions with ports already opened by other applications. The
test suite should therefore be more robust.

haskell-distributed/network-transport-tcp,aycanirican/network-transport-tcp