Refactors into interface and separate new client type