Allow the salt master hostname to be specified.

This means we don’t rely on the static hosts in the provider config
Let the roles be specified when bootstraping a minion.

Previously they were forcef to come from the provider config. For AWS we might not have this
Make sure the /etc/salt dir exists before we try to put a file.

It exists in some golden images, but not on all (i.e. not on AWS)
Use the API provided by the providers to find out information about the hosts to bootstrap
Merge pull request #17 from ministryofjustice/aws_bootstrap

Improve salt bootstrap wrappers to let us specify roles and masters