Clean up building C for loops in build.cpp

Updates the comments to reflect the current form of the c for loop primitive
and it's limitations as well as a plan to address the limitations. Note that
most of the comments will be replaced with the actual implementation before
the release.

Removes cruft and commented out lines that are not needed.

No longer mark the test condition as essential. This condition is now prevented
from being dead code eliminated by other means.