IClient: changes IClient from a class to an interface.