Store trace filenames in a std::set so that we don't get redundant filenames after closing and reopening the trace (e.g. after failed execv()).