The implementation of cli.go requires us to send an POST request to the controller via TCP. This can be done very easily using the standard http library, as seen in the recent bingossip test. Since this library uses TCP under the hood, is this an acceptable solution to the problem, or are we expected to craft the http request manually thought a TCP connection?
 With regards to logging, I have seen a lot of code in the controller using log.(L)Lvl formatting. I have been using this too for debugging, and when the program is built, these messages are suppressed since the log.SetDebugVisible is set. However, since it is expected that our program outputs messages to the standard output, does the grading ignore these messages (when running tests for example), or should we remove them from our submitted code?
 Is it normal that we cannot push to the main git branch? To test in the CI environment, I had to create another branch where the tests can run. Is this ok for submission?