get_datadir_fname2_suffix() should create missing directories as needd
In #9645 (moved), mr-4 notes that Tor behaves inconsistently if the datadir gets obliterated. IMO, removing the datadir of a running Tor is not a supported operation... but that's no reason not to be a little robust when we can.
One opportunity we have here is to just make get_datadir_fname2_suffix() always check whether the directory it's about to give a fname in exists, and if so, create it. (We should audit its uses though to make sure that's sensible. Perhaps it needs to take a create-dir-if-needed flag.)