Simulate Protocol Interactions in Go