added client domain object and helpers