<!--- Verify first that your feature was not already discussed on GitHub -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
<!--- Describe the new feature/improvement briefly below -->
Add support for `MaxInstanceLifetime` option to AWS ec2_asg module.
AWS feature introduction link: https://aws.amazon.com/about-aws/whats-new/2019/11/amazon-ec2-auto-scaling-supports-max-instance-lifetime/

##### ISSUE TYPE
- Feature Idea

##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
ec2_asg

##### ADDITIONAL INFORMATION
<!--- Describe how the feature would be used, why it is needed and what it would solve -->
Usage example:
<!--- Paste example playbooks or commands between quotes below -->
```yaml
- ec2_asg:
    name: myasg
    region: us-east-1
    launch_config_name: my_new_lc
    min_size: 1
    max_size: 5
    desired_capacity: 3
    max_instance_lifetime: 604800  # seconds
```

<!--- HINT: You can also paste gist.github.com links for larger files -->

as_group = describe_autoscaling_groups(connection, group_name)[0]
    update_size(connection, as_group, max_size + batch_size, min_size + batch_size, desired_capacity + batch_size)
    wait_for_new_inst(connection, group_name, wait_timeout, as_group['MinSize'] + batch_size, 'viable_instances')
    wait_for_elb(connection, group_name)
    wait_for_target_group(connection, group_name)
    as_group = describe_autoscaling_groups(connection, group_name)[0]
    props = get_properties(as_group)
    instances = props['instances']
    if replace_instances:
        instances = replace_instances
    module.debug("beginning main loop")
    for i in get_chunks(instances, batch_size):
        
        break_early, desired_size, term_instances = terminate_batch(connection, i, instances, False)
        wait_for_term_inst(connection, term_instances)
        wait_for_new_inst(connection, group_name, wait_timeout, desired_size, 'viable_instances')
        wait_for_elb(connection, group_name)
        wait_for_target_group(connection, group_name)
        as_group = describe_autoscaling_groups(connection, group_name)[0]
        if break_early:
            module.debug("breaking loop")
            break
    update_size(connection, as_group, max_size, min_size, desired_capacity)
    as_group = describe_autoscaling_groups(connection, group_name)[0]
    asg_properties = get_properties(as_group)
    module.debug("Rolling update complete.")
    changed = True
    return(changed, asg_properties)
def get_instances_by_launch_config(props, lc_check, initial_instances):