depends: add a fallback path in case package sources go missing

If a source url fails to download, try again at
$FALLBACK_DOWNLOAD_PATH/file.name, where FALLBACK_DOWNLOAD_PATH can be
overridden by the user.
depends: add sensible download timeout/retry values
Merge pull request #4752

df7565d depends: add sensible download timeout/retry values (Cory Fields)
c897b1e depends: add a fallback path in case package sources go missing (Cory Fields)