added client
Refactor client
add collection API