since ln was not using the -h it was following the target symlink destination and deciding it was a destination directory. madness ensued. also test cleanup and more output and change linkables to use sets