Fix several changed tests in ec2 auto scaling related modules

Currently, the ec2_asg and ec2_metric_alarm modules do not handle `"changed": true/false` correctly in certain situations:
- ec2_asg: the availability zones returned by AWS/boto can have different order than the availability zones passed in, e.g. `['ap-southeast-1b', 'ap-southeast-1a']` versus `['ap-southeast-1a', 'ap-southeast-1b']`
- ec2_metric_alarm: if not set, the description returned by AWS/boto would somehow be empty string instead of null
- ec2_metric_alarm: if the existing dimensions and the new dimensions have different keys, ansible can crash
- ec2_asg: if desired_capacity is not passed in, we shouldn't set changed to true