The right way to update these globals is to use a lock
and ensure that nobody else is updating them at the same
time. Also update a temporary dictionary before setting
the global one so that nobody sees partial updates to the
global one.
This should help fix the thread-safety of shade (and other
tooling built ontop of this library).
Change-Id: Ie0e0369d98ba6a01edcbf447378a786eec3f13f9