Deploy across an entire web cluster

Adds deploy, undeploy, and redeployAll to webapp cluster entities (DWAC and ControlledDWAC).

Also fixes some issues noticed in how tasks are tracked and displayed.
Would be good to put more brackets around it so it's obvious at first glance about whether the `+` after job is only in the else case (which I believe it is).
The previous toString impl this replaces was particularly bad for finding where the `:` was!