previously they might have been skipped on certain situations.
this also fixes some other reverse dependency enforcements and
implements new "pending" state for locked name.
this way we never change cwd, and relative filenames are always
parsed consistently. this also helps filename construction in many
places. this patch also changes '--root' to override location of
all configuration to be in the new root. previously it depended
on the file which one was used.
check for the full filename to match an expected pattern or
delete it (so we delete files with .new, .new.backup, etc.).
final part of remote package caching: fixes#49.