Support empty for loops. Closes #116.

I'm opening this pull request on behalf of @tricknotes. The commits contained within are his work, not mine. They should fix #116 and they LGTM.

**edit:** cleaned up summary