Many changes; there's a bug in cond with looping