Allow actor publishing at random high-level ports.

Using 0 as port parameter to io::publish instructs the OS to choose a
random high-level port available for binding. The user gets the actual
bound port as return value from io::publish, which used to return void.
If the user enters a non-zero port, the passed port shall equal the
return value.
Update publish documentation in manual.