issue #182 - first pass on promise support