feature(client) refresh: add callback
feature(dom) add pack, unpack -> twopack