SHA processing bug fix and cache timeout feature

I found that every repo based resource was getting constantly downloaded, so I fixed with the 1st commit.

However, I also found that with slow connections, the constant downloading of the obr.xml from my 2 nexus repos was slowing down my builds... I added the 2nd commit to throttle back how often the repos were queried. I made it configurable to fit the individual.

This could have been 2 commits, but the 2nd one is based on the first. I could restructure them if need be.