Add associate-public-ip-address key to instance resource

The option is supported by RunInstances, CreateSpotInstanceRequest and
CreateLaunchConfiguration. For the latter twp API calls, it's a
top-level instance property, while RunInstances sees the option
explicitly associated with network device zero -- effectively making it
an instance property, again. So, top-level it is here as well.

This commit adds only validation of the key in the instance definition.
It is not propagated to the API calls themselves.
Made work option 'associate-public-ip-address' for ELB/ASG-based config
Merge pull request #11 from shadone/associate-public-ip-address

Support AssociatePublicIpAddress option when launching ASGs. Unfortunately, the feature will be silently ignored when launching isolated instances and making spot requests. Oh, well.