Currently, it's up to each command to close the hubs it opens. Most commands close the hubs at the end of successful runs. If the user quits the program using ctrl+c or any other method, the program should intercept this and close the hubs without additional code in each command. This would be easiest if we kept a global list of all currently open hubs.