Fix: psiphond startup failure race condition
tunnelServer.Run may be invoked and fail before the main loop is ready to
consume errorChannel. In this case, the error delivered to errorChannel will
be dropped. And psiphond will not log the error and continue running.
The fix is to buffer errorChannel so at least one error can be sent even when
the main loop is not actively receiving from errorChannel.