add worker in sdk
set client property on talk
use promise
remove `express` dependency
redesign apis