Add file_map to salt.utils.cloud.bootstrap-enabled providers

Allows an arbitrary group of files to be uploaded to the target system before running the deploy script. Requires a provider that is making use of `salt.utils.cloud.bootstrap()`, which I believe is currently limited to ec2, gce, openstack and nova.

The `file_map` can be configured globally in `/etc/salt/cloud`, or in any provider or profile file. For instance, a profile might look like:
```
centos65:
  provider: techhat-ec2
  image: ami-8997afe0
  size: m1.small
  ssh_username: root
  securitygroup: default
  keyname: mykey
  private_key: /root/mykey.pem
  file_map:
    /tmp/local/blah1: /tmp/remote/blah1
    /tmp/local/blah2: /tmp/remote/blah2
    /tmp/local/blah3: /tmp/remote/blah3
```