* Support for dumping parsed programs as strings (both a basic,
repr-like version and an indented version that is easier to read)
* Display the parsed program if verbosity is high enough
* Program tracing if verbosity is high enough
* The `add_host` option can be used to add the current host to the
group being created. It avoids having to use a separate `add_host`
instruction in this case.
* The `parent` option can specify the parent group. It avoids having
to use a separate `add_child` instruction in this case.
The "block" instruction allows mulitple instructions to be grouped in
order to be executed based on a single condition, in a common loop, with
a local variable scope. In addition, it provides a way to recover from
errors.