add some promise infrastructure
more changez
ga