cache around endpoints so that they are reused - so that networks using brokerIds & brokerInfos can store the state on the endpoint