feat: add support for expansion statements (P1306)
Introduces support for `template for ( init; for-range-decl : expansion-init )`
which is a compile-time way to expand (iterate over):
- expansion expressions
- anything destructurable via structured bindings
- ranges with compile time size
It was sufficient to simply re-use the existing rule for
_for_range_loop_body for the part inside the parentheses, but add the
required sequence of `template` followed by `for`