Support conditional template instructions

The form is either
```erlang
{'if', ConditionVariable :: atom(), InstructionsIfTrue :: list() | tuple()}.
```
or
```erlang
{'if', ConditionVariable :: atom(), InstructionsIfTrue :: list() | tuple(), InstructionsIfFalse :: list() | tuple()}.
```