Code cleanup

use createDirInteractive and replace redundant parts
Print a message if the target directory is created
Fixup logging with a logfile

If a logfile is used the state of the call if it was successful
or not is also part of the logfile and not exposed to the calling
terminal. With this patch the overall success or error information
is also printed on the calling terminal.