some client setup and redefined logging as an interface