worker: fix data race in FakeState
worker: fix data race in FakeState

Fixes LP 1468188

After a discussion it was decided to make the FakeState's set/get EnvironConfig methods look more like the _real_ state, which backs the config.Config value with a map stored in mongodb, rather than sharing a copy of *config.Config.

This has the side effect that each value passed or returned from SetConfig, EnvironConfig will produce a new *config.Config value which is not shared by other callers.

mhilton/juju-juju,reedobrien/juju,alesstimec/juju,dooferlad/juju,macgreagoir/juju,mhilton/juju-juju,dooferlad/juju,tsakas/juju,anastasiamac/juju,bz2/juju,ericsnowcurrently/juju,gabriel-samfira/juju,frankban/juju,anastasiamac/juju,mhilton/juju,kat-co/juju,davecheney/juju,howbazaar/juju,tasdomas/juju,thomnico/juju,mjs/juju,howbazaar/juju,thomnico/juju,gabriel-samfira/juju,frankban/juju,mhilton/juju-juju,dimitern/juju,bac/juju,mikemccracken/juju,mhilton/juju,bz2/juju,bac/juju,frankban/juju-tmp,Altoros/juju-cloudsigma,voidspace/juju,dooferlad/juju,frankban/juju-tmp,howbazaar/juju,frankban/juju,makyo/juju,marcmolla/juju,alesstimec/juju,macgreagoir/juju,ericsnowcurrently/juju,cloud-green/juju,fwereade/juju,bz2/juju,mikemccracken/juju,alesstimec/juju,kat-co/juju,wwitzel3/juju,wwitzel3/juju,macgreagoir/juju,perrito666/juju,davecheney/juju,mjs/juju,tsakas/juju,mjs/juju,ericsnowcurrently/juju,Altoros/juju-cloudsigma,waigani/juju,reedobrien/juju,bac/juju,voidspace/juju,reedobrien/juju,tych0/juju,bac/juju,tsakas/juju,alesstimec/juju,marcmolla/juju,makyo/juju,mhilton/juju,marcmolla/juju,tych0/juju,bogdanteleaga/juju,anastasiamac/juju,thomnico/juju,gabriel-samfira/juju,davecheney/juju,bac/juju,fwereade/juju,Altoros/juju-cloudsigma,bogdanteleaga/juju,marcmolla/juju,bz2/juju,gabriel-samfira/juju,tasdomas/juju,wwitzel3/juju,mjs/juju,frankban/juju-tmp,waigani/juju,alesstimec/juju,anastasiamac/juju,waigani/juju,dimitern/juju,AdamIsrael/juju,frankban/juju,perrito666/juju,fwereade/juju,kat-co/juju,thomnico/juju,AdamIsrael/juju,frankban/juju,fwereade/juju,macgreagoir/juju,Altoros/juju-cloudsigma,tych0/juju,mjs/juju,tasdomas/juju,perrito666/juju,dooferlad/juju,mikemccracken/juju,reedobrien/juju,bogdanteleaga/juju,mhilton/juju-juju,waigani/juju,axw/juju,kat-co/juju,dimitern/juju,axw/juju,voidspace/juju,tsakas/juju,bz2/juju,AdamIsrael/juju,AdamIsrael/juju,frankban/juju-tmp,macgreagoir/juju,howbazaar/juju,cloud-green/juju,mikemccracken/juju,mjs/juju,mjs/juju,tych0/juju,howbazaar/juju,cloud-green/juju,voidspace/juju,perrito666/juju,axw/juju,ericsnowcurrently/juju,ericsnowcurrently/juju,axw/juju,makyo/juju,perrito666/juju,axw/juju,marcmolla/juju,dooferlad/juju,kat-co/juju,mhilton/juju,anastasiamac/juju,davecheney/juju,tasdomas/juju,wwitzel3/juju,gabriel-samfira/juju,cloud-green/juju,dimitern/juju,makyo/juju,bogdanteleaga/juju,dimitern/juju,reedobrien/juju,mikemccracken/juju