refactored the client, creating a connection factory to reduce responsibility of the client. Added option for including a Request_id header if present in current thread