Abstracted Client a bit