Changed backup hashnames to better handle links.

Symlinks are now named using a sha256 hash of the link contents.
This prevents any conflicts between a file containing "a -> b" and a
link with that content. This is also more accurate identifying
information than the content of a linked file or directory.
Fixes for symlink handling.
Added testing for dir backup.

Tests that a dir backup is an ActionList of file backups taken from
its contents.