task: add support to set custom properties

Tasks can set properties using the set-<property-name> =
<property-value> syntax. Subtasks inherit all custom properties from
their parents.

Change-Id: Iadaf49e1b95398edefbeb851c10bc397ae15d3c3
10 files changed