Made some changes on testing locks.
Ran some tests against the scenario of
hanging up I'm able to recreate.
With the lock in place, the hang up does not
happen any longer

Will only allow one request per bundle to trigger
a refresh, other requests for that bundle will pull
the cache.  Multiple different bundles can trigger
their refreshes at the same time.