The way strings are marshalled currently cause some memory leaks on the simulator. In addition, when we move to the WPILib DS Simulator, it will break, since the code currently automatically marshals strings. The WPILibs are UTF-8. On mono it marshalls to UTF-8, however windows will do UTF-16. So we need to manually marshall this. It will also fix some other bugs as well.
The way strings are marshalled currently cause some memory leaks on the simulator. In addition, when we move to the WPILib DS Simulator, it will break, since the code currently automatically marshals strings. The WPILibs are UTF-8. On mono it marshalls to UTF-8, however windows will do UTF-16. So we need to manually marshall this. It will also fix some other bugs as well.