autoscaling group support

* This adds a type and provider for autoscaling groups and launchconfigs
* This currently supports only the required properties
* It also only supports non-VPC environments at the moment
* It also doesn't support changing any of the properties
This allows for changing any of those properties after the resource (ie. the alarm in this case) has been created.

Technically it means if you call the method `metric=` (which Puppet would call if you try and update the metric property of an existing alarm resource) the code will call the update method.

This is because of the way the alarm API works, specifically the `put_metric_alarm` method always takes all of the property values.