build internal cache of services so all lookups are done internally, removing overhead of additional zookeeper lookups. Still needs monitoring to update the cache based on zookeeper events