Improve the system-assigned port scenario

It is little known that tinc allows setting zero as its port, which makes it request a randomly-assigned port from the system. It is especially useful to improve UDP hole punching capabilities when multiple nodes are behind the same NAT. This pull request brings some improvements to that scenario.