figureOutState must be part of the promise to so that it only gets it's state when whatever prior promise b4 it is done
whole build