Wait infinitely if max_wait is negative

The t/12_pass_wait_port_options.t will fail if the server process does not
start listening in max_wait limit. This can happen if the host is
loaded or just if the scheduler decides to postpone the process.

This patch adds possibility to wait infitely by passing a negative
max_wait value to the Test::TCP object and it changes the
t/12_pass_wait_port_options.t test to use this feature.

https://github.com/tokuhirom/Test-TCP/issues/28
Signed-off-by: Petr Písař <ppisar@redhat.com>