Using instane.update() in ec2.boot_instances()

Instead of fetching the complete list of reservations, using
instance.update() to update the instance object.

Signed-off-by: Shashank Sahni <shredder12@gmail.com>
Associating IP with every instance

Updated ec2.boot_instances() to associate public_ip with every
instance.

Removed call to associate_public_ip() from cluster.spawn().

Signed-off-by: Shashank Sahni <shredder12@gmail.com>
Using EIP to bootstrap instead of private

Saving 'ip_address' attribute in node object.

Updated configure.py to use node['ip_address], elastic IP,
instead of node['private_ip_address'].

Signed-off-by: Shashank Sahni <shredder12@gmail.com>
changed instance attribute to state from status

No 'status' attribute in Instance object. Changed it to 'state'.

Signed-off-by: Shashank Sahni <shredder12@gmail.com>
IP disass. added to ec2.release_public_ips

Signed-off-by: Shashank Sahni <shredder12@gmail.com>
Rewrote cluster.delete()

Now, delete instances immediately. Due to some difference between
openstack and AWS EC2 response, I used security groups to identify
an instance state and delete keypairs if they are only associated
with terminated instances(in case of AWS) or with no one(openstack).

Signed-off-by: Shashank Sahni <shredder12@gmail.com>
applied filter to ec2.release_public_ips()

Signed-off-by: Shashank Sahni <shredder12@gmail.com>