add a thin network client using promises