type RPCServer … //Create a new server, automatically selecting a port func newRPCServer(parallelTotal int, reporter reporters.Reporter) (*RPCServer, error) { … } //Start the server. You don't need to `go s.Start()`, just `s.Start()` func (server *RPCServer) Start() { … } //Stop the server func (server *RPCServer) Close() { … } //The address the server can be reached it. Pass this into the `ForwardingReporter`. func (server *RPCServer) Address() string { … } func (server *RPCServer) GetSuiteDone() chan interface{ … } func (server *RPCServer) GetOutputDestination() io.Writer { … } func (server *RPCServer) SetOutputDestination(w io.Writer) { … } func (server *RPCServer) RegisterAlive(node int, alive func() bool) { … }