Introduces a new loop variable '$', which can be used inside of sections.

The $ variable provides some limited logic inside of sections:
  $.first, true if first iteration
  $.last, true if last iteration
  $.index, 0-based index
  $.count, 1-based index

This provides some helpful logic, such as creating lists where you don't want a delimiter before the first item.
The commit includes some tests under 'enhanced_loop'.