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

# Type of request: This is a ...

[x] bug report
[ ] feature request

# Detailed description
VTL request containing an expression evaluated to String Concatenation does not work.

### Query
```
mutation createShop {
            createShop(shop: { shopName: "Apple" } ) {
              shopName
            }
          }
```

### VTL Template (**Works when deploy to Appsync on AWS services**)
```
{
  "version" : "2018-05-29",
  "operation" : "PutItem",
  "key" : {
    "PK": $util.dynamodb.toDynamoDBJson("SHOP#${ctx.args.shop.shopName}"),
    "SK": $util.dynamodb.toDynamoDBJson("PROFILE#$ctx.args.shop.shopName")
  },
  "attributeValues" : { "shopName": { "S": "Apple" }}
}
```

## Expected behavior
### Item stored in dynamodb 
```
{
            "PK": {
                "S": "SHOP#Apple"
            },
            "SK": {
                "S": "PROFILE#Apple"
            },
            "shopName": {
                "S": "Apple"
            }
        }
```


## Actual behavior
### Item stored in dynamodb 
```
{
            "PK": {
                "S": "SHOP#${ctx.args.shop.shopName}"
            },
            "SK": {
                "S": "PROFILE#$ctx.args.shop.shopName"
            },
            "shopName": {
                "S": "Apple"
            }
        }
```

# Steps to reproduce

## Command used to start LocalStack
docker-compose
````
version: '2.1'

services:
  localstack:
    container_name: "${LOCALSTACK_DOCKER_NAME-localstack_main}"
    image: localstack/localstack
    ports:
      - "4566-4700:4566-4700"
      - "443:443"
      - "${PORT_WEB_UI-8080}:${PORT_WEB_UI-8080}"
    environment:
      - SERVICES=serverless,cloudformation,dynamodb,iam,s3,appsync,edge
      - DEBUG=1
      - DATA_DIR=${DATA_DIR- }
      - PORT_WEB_UI=${PORT_WEB_UI- }
      - LAMBDA_EXECUTOR=${LAMBDA_EXECUTOR- }
      - KINESIS_ERROR_PROBABILITY=${KINESIS_ERROR_PROBABILITY- }
      - DOCKER_HOST=unix:///var/run/docker.sock
      - HOST_TMP_FOLDER=${TMPDIR}
      - LOCALSTACK_API_KEY=${LOCALSTACK_API_KEY}
    volumes:
      - "${TMPDIR:-/tmp/localstack}:/tmp/localstack"
      - "/var/run/docker.sock:/var/run/docker.sock"
````

## Client code (AWS SDK code snippet, or sequence of "awslocal" commands)

...

import os
import re
import json
import time
import boto3
import base64
import logging
import six
from six.moves.urllib.parse import quote_plus, unquote_plus
from localstack import config
from localstack.constants import (
    REGION_LOCAL, LOCALHOST, MOTO_ACCOUNT_ID, ENV_DEV, APPLICATION_AMZ_JSON_1_1,
    APPLICATION_AMZ_JSON_1_0, APPLICATION_X_WWW_FORM_URLENCODED, TEST_AWS_ACCOUNT_ID)
from localstack.utils.common import (
    run_safe, to_str, is_string, is_string_or_bytes, make_http_request, is_port_open, get_service_protocol)
from localstack.utils.aws.aws_models import KinesisStream
ENV_ACCESS_KEY = 'AWS_ACCESS_KEY_ID'
ENV_SECRET_KEY = 'AWS_SECRET_ACCESS_KEY'
ENV_SESSION_TOKEN = 'AWS_SESSION_TOKEN'
LOG = logging.getLogger(__name__)
LOCAL_REGION = None
CUSTOM_BOTO3_SESSION = None
CREATE_NEW_SESSION_PER_BOTO3_CONNECTION = False
INITIAL_BOTO3_SESSION = None
BOTO_CLIENTS_CACHE = {}
DEFAULT_TIMER_LOOP_SECONDS = 60 * 50
SQS_ARN_TO_URL_CACHE = {}
class Environment(object):