Split out the concurrent map from IndexingService

o Abstracts how that map is updated and also what mappings are tracked internally
o This prepares for having multiple mappings instead of only being able to lookup by long