I'm confused as to what the purpose of `AssumeRolePolicyDocument` is.  
It seems like to create a role all you need is a parent name that you can attach policies to.

It seems like `AssumeRolePolicyDocument` is that parent name but somehow there's more to it.

What is this doing?

    "AssumeRolePolicyDocument": {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "Service": ["lambda.amazonaws.com"]
                },
                "Action": ["sts:AssumeRole"]
            }
        ]
    }