refactor(client): cleaning up implementation