unix: only set SO_REUSEADDR when bind() fails

Only call setsockopt() when the initial bind() fails, then retry.
Saves a system call in what is normally the common case.

R=@saghul