Swapping out a "copy on write map" for ConcurrentHashMap.

The previous implementation had code that turned a `HashMap` into,
essentially, a copy-on-write map that locked around the `EpidemicServer.class`
object when it was going to do a replacement.

I've replaced that code with a ConcurrentMap, using putIfAbsent to clarify the
logic somewhat.