Remove iterator on undefined. Introduce
  Variable* getFirstUndefined() and
  Variable* getNextUndefined( Variable* )

Also fix a bug in the heuristic (missing return).
More clear output, also easier to cut and paste on a spreadsheet.
Optmize the search of the first undefined. We store the last found untill an unroll occurs.
Keep track of the last swap index. It is rewarding!