start adding async interface; ref #17