Replace repository configuration on reload
Review Request #9762 — Created March 8, 2018 and submitted
When loading the config, we were just inserting into the global
repository map, which may leave old repositories left in the map in the
case where some were removed. Now we replace the entire map when we
finish (re-)loading the configuration.
Since we are only loading the config either before the server starts for
the first time or after it shuts down, we are safe from data races.
Ran unit tests.