Allow powershell (& other arbitrary) install files inside a broker type

Windows machines, being unable to run Bash files, will need an alternative
file format for each broker. In order for a broker to receive a different
install file, its task needs to call
`/svc/broker/${id}/install?script=${file}`, where `$id` is the node id and
$file is the file that should be returned. For powershell, `$file` will equal
`install.ps1` or `install.ps1.erb` and the file in the `.task` folder will be
`install.ps1.erb`. Calling this without the `script` argument is equivalent
to calling it with `script=install` for `install.erb`, meaning this is a
backwards-compatible change.

Fixes https://tickets.puppetlabs.com/browse/RAZOR-355