create client constructor