Allow clients to pass multiple 0s for fresh ports.

Tested this with mesos-docker with requests for

* no ports (randomly set, the old behaviour),
* two zero ports,
* two non-zero ports and
* one zero and one non-zero port.

All zero ports were replaced with fresh, random ports. Non-zero ports were left as is.