Talos shells out a lot. In bcontroller we shell out to start/stop_xperf and etlparser.py. In ffprocess we shell out to run bcontroller.py and head and tail scripts. At a casual glance, it looks like we can just import these things and call via an API versus shelling out and we should do this when we can. There's no real point of opening a subshell for a blocking python script.