this shouldn't be a part of a client. it should be a separate entity similar to how a signer is not part of the client.