Install over broken symlinks correctly

If a symlink already existed where a link was to be installed and that
link was broken, the installation script did not prompt the user and
attempted to install the new symlink which would fail. Now it will
prompt the user as if the symlink was not broken.

The test for uninstall is left unchanged since the following readlink is
guaranteed to fail.
Merge branch 'core'