some work on the new Cons(2) implementation