Test a recursion inside a tag definition.

Had to add the frame to the value mapped by the `named` map, so that the
recusion would use correct body specified by the caller. Without storing
the frame, the body is taken from the `recurse` directive.

Also, had to fix the `block` directive by making sure that when a frame
is reused, it is copied, and the directive is replaced with the current
tag directive, so that the body is taken from the tag directive that
invokes a sub-tag, not the first tag invoked.

Closes #112.