Remove the "safe" target
There are some parts of the build system that are recursive. For one, the gnulib layer and the gettext build infrastructure. However, we also need to recursively build the library to generate the binding code, and we need to recursively build all programs in order to get their =--help= output for /help2man/. For these reasons, it is impossible to go without a recursive build system. This poses an unsolved problem. Recursive builds and multi-process builds do not go well together, because each recursive branch does not know what the other branch is touching. So I had created a list of things to get right in that order. Each item of that list could be built with multiple jobs, but the steps had to be taken in order. I had named this list "safe", because it ensured that there would be no recursive call (except the safe target itself that would spawn all tasks). However, this is a little troubling because bootstrapping the project with multiple jobs meant to run =autogen.sh=, then =configure=, then =make safe=, then =make=. I have found that Automake provides /subdirs/, which already implements what I was trying to do. So there is a subdir for each step.