rewrite the first pass of tco according to its strict definition
tailcall recognition started to work