link2symlink: use an intermediate file that holds the original content.

As said by Corbin Champion, hardlinks and symlinks are not
semantically equivalent:

  * for the hardlink "A <-> B", A and B points to the same content.
    If one of them is removed, the other one is still valid.

  * for the symlink "A -> B ", A points to B.  If the latter is
    removed, the former will be invalid.

To keep the original semantic, an intermediate file could be used: the
hardlink "A <-> B" can be translated into two symlinks ""A -> C" and
"B -> C", where C is the original content.

Before:

    $ rm -f foo bar
    $ echo TEST > foo
    $ ./src/proot ln foo bar
    $ ls -il foo bar
    6127676 lrwxrwxrwx 1 cedric users 35 Oct 16 21:21 bar -> /home/user/foo
    6127675 -rw-r--r-- 1 cedric users 5 Oct 16 21:21 /home/user/foo

Now:

    $ rm -f foo bar
    $ echo TEST > foo
    $ ./src/proot ln foo bar
    $ ls -il foo bar
    6127676 lrwxrwxrwx 1 cedric users 35 Oct 16 21:21 bar -> /home/user/foo.l2s
    6127669 lrwxrwxrwx 1 cedric users 35 Oct 16 21:21 foo -> /home/user/foo.l2s