<!-- Love localstack? Please consider supporting our collective:
👉  https://opencollective.com/localstack/donate -->

# Type of request: This is a ...

[ ] bug report
[x] feature request

# Detailed description
* Define a lambda function in a CDK stack (e.g. "TestStack"), giving it a descriptive ID value (e.g. "DescriptiveName")
* Deploy the CDK template (`cdklocal deploy`)
* Check the function's name in the dashboard

## Expected behavior
Function's name includes its CDK stack ID. For example, deploying the template to AWS will produce a function name of the form `<StackName>-<FunctionID><mishmash>` (e.g. TestStack-DescriptiveName8C62FF46-hXye7CyPgrc7)

## Actual behavior
Function's name has the form `<StackName>-lambda-<mishmash>` (e.g. TestStack-lambda-cb0e840d), making it more difficult to use in the localstack dashboard when there are several lambdas.

# Steps to reproduce
See detailed description

## Command used to start LocalStack
`LOCALSTACK_API_KEY=... localstack start`

## Client code (AWS SDK code snippet, or sequence of "awslocal" commands)
(none)
for res in resources:
                if res["path"] == "/" and not res.get("parentId"):
                    return res["id"]
    elif resource_type == "ApiGateway::Resource":
        if is_ref_attribute:
            return resource_state.get("id")
    elif resource_type == "ApiGateway::Deployment":
        if is_ref_attribute:
            return resource_state.get("id")
    elif resource_type == "S3::Bucket":
        if attribute == "WebsiteURL":
            bucket_name = resource_props.get("BucketName")
            return f"http://{bucket_name}.{S3_STATIC_WEBSITE_HOSTNAME}"
        if is_ref_attr_or_arn:
            bucket_name = resource_props.get("BucketName")
            bucket_name = resolve_refs_recursively(stack_name, bucket_name, resources)
            if attribute == "Arn":
                return aws_stack.s3_bucket_arn(bucket_name)
            return bucket_name
    elif resource_type == "Elasticsearch::Domain":
        if attribute == "DomainEndpoint":
            domain_status = resource_state.get("DomainStatus", {})
            result = domain_status.get("Endpoint")
            if result:
                return result
        if attribute in ["Arn", "DomainArn"]:
            domain_name = resource_props.get("DomainName") or resource_state.get("DomainName")
            return aws_stack.es_domain_arn(domain_name)
    elif resource_type == "StepFunctions::StateMachine":
        if is_ref_attr_or_arn: