Add update mode

This mode allows a user to append to nodes in the YAML file.

This can be useful when programmatically building up a set of configure
commands, for example, instead of resorting to a Python hook file.

Example use:

```
  - when: pyver == '3.4'
    name: configure
    mode: update
    extra: ['--without-ensurepip']

  - when: python_framework
    name: configure
    mode: update
    extra: ['--enable-framework=${ARTIFACT}']
```
Sure thing. I will update the docs as well.

On Friday, December 5, 2014, Ondřej Čertík <notifications@github.com> wrote:

> In hashdist/spec/tests/test_package.py:
>
> > +
> > +          - name: configure
> > +            mode: update
> > +            extra: ['--enable-framework=${ARTIFACT}']
> > +    """)
> > +    p = package.PackageSpec("mypackage", doc, [], {'bar':'othervalue'})
> > +    ctx = hook_api.PackageBuildContext(p.name, {}, p.parameters)
> > +    ctx.parameters['foo'] = 'somevalue'
> > +    #script = p.assemble_build_script(ctx)
> > +    #eq_(script, dedent("""\
> > +    #    set -e
> > +    #    export HDIST_IN_BUILD=yes
> > +    #    ./configure --with-foo=somevalue --with-bar=othervalue
> > +    #    make
> > +    #    make install
> > +    #"""))
>
> @ahmadia <https://github.com/ahmadia> can you help me finish the test? I
> didn't figure out how to access the 'extra' variable to check that it got
> assembled properly.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/hashdist/hashdist/pull/294/files#r21379847>.
>