merge client into main library

Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
v2.101