http client builder using type combinator