Ongoing progress with AWS driver for `docker hosts`

Make API request to create instance WORK!

Move into subfolder and make schema

Make unmarshalling XML RunInstances response work

Add SSH username

Store InstanceId in driver

Move to hierarchy like:

- /drivers/aws/ec2
- /drivers/aws/ebs

Add skeleton for instance actions

Make instance Remove work!

Genericize easy Instance API calls and implement

Add Error state

Shuffle some stuff around:

- add way to retrieve response from performStandardAction
- start implmenting GetState

Many changes:

- Make environment variables for credentials work
- Describe Instances (status) call now works
- Fix Error state bug
- Tagging instance with name now works correctly

Remove extraneous flush (merge artifact?)

Don't set newly created hosts as active

- There's too much possibility that something will go wrong, lag will
happen etc.  Or people writing drivers will bite themselves like me

Implement working public dns / public ip feature

Implement request for Create Key Pair

CreateKeyPairResponse skeleton

Mostly make SSH work

Make SSH and provisioning work

Add SG implementation

Make security group creation and ingress work

A few flourishes around provisioning

- Wait for SSH connection to become available on 22 before provisioning
  (prevents races where sshd is not yet started)
- Poll instance state as well to make sure IP Address is set correctly
- Introduce `--no-provision` option to skip default provisioning (useful
  if you have rolled your own custom AMI)

Clean up key pair on host rm

Signed-off-by: Nathan LeClaire <nathan.leclaire@docker.com>

Docker-DCO-1.1-Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com> (github: nathanleclaire)