Both the passwords and temporary files of the embedded library were stored
in the same directory. Now the directories are separated and the embedded
library uses the temporary directory. The datadir cleanup also now only
cleans up the temporary data directory.
The various global directory setter functions now process the input they receive
and remove redundant and trailing forward slashes from the directory paths.