Controller now communicates via UDP/JSON instead of HTTP/JSON, various other cleanups