<!-- 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

SNS is unable to forward the message to SQS (non fifo queue) when using the `elasticmq` backend and fails with the following log
```
2021-01-19T09:31:50:WARNING:localstack.services.sns.sns_listener: Unable to forward SNS message to SQS: An error occurred (InvalidParameterValue) when calling the SendMessage operation: Value for parameter MessageGroupId is invalid. The request include parameter that is not valid for this queue type Traceback (most recent call last):

File "/opt/code/localstack/localstack/services/sns/sns_listener.py", line 297, in message_to_subscribers

sqs_client.send_message(

File "/opt/code/localstack/.venv/lib/python3.8/site-packages/botocore/client.py", line 357, in _api_call

return self._make_api_call(operation_name, kwargs)

File "/opt/code/localstack/.venv/lib/python3.8/site-packages/botocore/client.py", line 676, in _make_api_call

raise error_class(parsed_response, operation_name)

botocore.exceptions.ClientError: An error occurred (InvalidParameterValue) when calling the SendMessage operation: Value for parameter MessageGroupId is invalid. The request include parameter that is not valid for this queue type
```
This is likely a regression due to #3435. Tested with the default backend on `0.12.5` and it works as expected. Also works with `elasticmq` backend on `0.12.4`

## Expected behavior

Same behavior with the `elasticmq` backend as with the default backend.

## Actual behavior

Fails on `elasticmq` backend, no SQS message received when SNS message is sent.

# Steps to reproduce

## Command used to start LocalStack

```yaml
  localstack:
    image: localstack/localstack:0.12.5
    ports:
      - 4566:4566
    environment:
      - AWS_DEFAULT_REGION=ap-northeast-1
      - SERVICES=sns,sqs
      - SQS_PROVIDER=elasticmq
```

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

'Message': message,
        'Timestamp': timestamp_millis(),
        'SignatureVersion': '1',
        
        
        'Signature': 'EXAMPLEpH+..',
        'SigningCertURL': 'https://sns.us-east-1.amazonaws.com/SimpleNotificationService-0000000000000000000000.pem'
    }
    for key in ['Subject', 'SubscribeURL', 'Token']:
        if req_data.get(key):
            data[key] = req_data[key][0]
    attributes = get_message_attributes(req_data)
    if attributes:
        data['MessageAttributes'] = attributes
    return json.dumps(data)
def create_sqs_message_attributes(subscriber, attributes):
    if not is_raw_message_delivery(subscriber):
        return {}
    message_attributes = {}
    for key, value in attributes.items():
        attribute = {
            'DataType': value['Type']
        }
        if value['Type'] == 'Binary':
            attribute['BinaryValue'] = base64.decodebytes(to_bytes(value['Value']))
        else:
            attribute['StringValue'] = str(value['Value'])
        message_attributes[key] = attribute
    return message_attributes
def get_message_attributes(req_data):