from a given list, produce a list of all partial reductions, sweeping from left to right
static assert (Scan!(Sum, 0,1,2,3,4,5) == Cons!(0,1,3,6,10,15));
See Implementation
from a given list, produce a list of all partial reductions, sweeping from left to right