Make sure to handle setuid() return code properly.

In some tools the return value of setuid() is not checked. In the worst
case this could lead to privilege escalation since the process does not
give up its root privileges and continue as root.
Added new test cases for testing helper functions.

Added new test cases for testing the helper functions getDirNameFromPath()
and getFilenameFromPath().
Fixed typo and added comment.
Added OFFilename versions to some helper functions.

Added OFFilename versions to the helper functions getDirNameFromPath(),
getFilenameFromPath(), normalizeDirName(), combineDirAndFilename(),
searchDirectoryRecursively() and getFileSize() in order to enhance the
support for the Windows-specific wide character encoding (UTF-16).

Internally, the same code is used for both the OFString and OFFilename
version of the helper functions, which should facilitate finding any bugs.
Added new helper function for renaming files.

Added new platform-independent and wide character supporting helper function
renameFile().
Added function for appending filename extension.

Added wide character supporting helper function appendFilenameExtension().
Added wide character support to this tool.

Added support for the Windows-specific wide character encoding (UTF-16) to
this command line tool, i.e. support for filenames with such an encoding.
For this purpose, the toolkit has to be compiled with WIDE_CHAR_MAIN_FUNCTION
and WIDE_CHAR_FILE_IO_FUNCTIONS being defined.
Added new helper function for copying files.

Added new platform-independent and wide character supporting helper function
copyFile().
Changed file mode bits back from "0755" to "0644".
Fixed typo in comment.
Added new command line option --create-backup.

Added new command line option --create-backup to explicitly show what the
default behavior is.
Avoid passing invalid values to rename().

In case wide character support is enabled, there was a chance that a NULL
pointer could be passed to one of the two parameters of the rename() function.
Avoid passing NULL to OFString, which is deprecated.

Avoid passing NULL to OFString in certain cases within normalizeDirName()
since this is deprecated (and results in an annoying message in DEBUG mode).
Added support for wide chars to DICOMDIR code.

Added support for the Windows-specific wide character encoding (UTF-16) to
the classes and the command line tool that generate a DICOMDIR file.
Fixed issue when compiled with wide char support.

The initialization of an OFFilename instance with NULL is ambiguous when
compiled with WIDE_CHAR_FILE_IO_FUNCTIONS or WIDE_CHAR_MAIN_FUNCTION defined.
This issue was introduced with commit d084ebf, i.e. the previous one.
Added new condition constant and fixed typo.

Added new condition constant for DICOMDIR files: EC_InvalidDICOMDIR. Also
fixed a typo in the textual description of EC_PrematureSequDelimitationItem.