When a client asks for a serviceLocation, it must supply a clientId - This is used to make it possible to log/track which clients is using which services.
Specifies a specific serviceLocation for a specific serviceId
ServiceId is used as a unique ID to a specific service (plus environment and version).
ServiceLocation represents one single instance/deployment of a particular server(specified with ServiceId).
Used when a specific client is requesting a specific service
Utility case class holding info about one specific serviceId and all its present available serviceLocations