Detect and error on finding a shared file that hasn't been moved

The rails-deploy-before-down script creates symlinks in
the repository directory to each file in SHARED_FILES if
SHARED_FILES_PATH was set.  This is potentially risky, since
if a file hasn't been moved to the shared directory yet, it'll
be overwritten with a sylmink, and if a directory hasn't been
moved a symlink will be created in the directory.  So, the
code introduced in this commit detects if a file or directory
is there rather than a symlink, and produces a helpful error
if so.

One question would be why we don't try to move any such files
or directories that are found in this script.  (Previously we
did something similar when the default location of the xapian
databases moved from vendor/plugins to lib.)  In this case
I'm not inclined to do this since:

 (a) It would involve moving important resources out of the
     repository tree - this is probably something that requires
     thought and care from the deployer.

 (b) It would be unpleasant to have that migration code still
     in script/rails-deploy-before-down for a long time into
     the future.