The directory-creation loop iterated as "for required_paths in
required_paths:" while declaring "global required_paths", so after the
first call the module-level list was rebound to the last iterated string
('data/labels'). A second call then iterated that string character by
character and attempted os.mkdir('d'), os.mkdir('a'), ... which raises
FileExistsError and aborts boot.
Rename the loop variable and drop the now-unneeded global declaration;
add regression tests pinning the module state and the repeat-call
behaviour.