[BZ 1026473] When upgrading bundle with compliance=full deployment folder
still contains empty directories not found in bundle

This patch adds support for handling directories in bundle-deployment client
side. The impact is only for doing updrade or revert (not initial deploy).
FileHashcodeMap.rescan now reports every single directory with special HASH.
Then in Deployer code we need to fill it directories to 2 other maps
(original=from hashcodes.dat, newFiles=from bundle content). Then when
processing diff we have to sort items to be backed up/deleted and process
them in reverse order. (Then if there is 'dir/file', then 'dir/file' is
processed before 'dir'). Finally backup for dir is just creating it in
backup directory. Several tests have been fixed - especially directories now
appear in diff additions together with new files. SimpleDeployerTest has
been updated to test empty dir handling.
(cherry picked from commit d306411243c361b1fb3a009e6d959447322c3b5f)

Signed-off-by: John Mazzitelli <mazz@redhat.com>