Copy promises to 2nd ed. Convert cps->fn to a function