A handful of heady improvements.

A number of heavily revised functions (e.g., set_dir(),
for_string_lines()) failed to undergo proper testing -- or, let's
adamantly face it, any testing at all. Such regressions have been
devoutly exsanguinated, though there doubtless remain a host more.