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"] } ] }