List types should never be optional if sent to NT because an empty list conveys the same thing. The equivalent C++ struct takes the same approach with empty vectors rather than an optional vector.
Automatically starts a TCP server in C++. Also adds warnings to Python.