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

# Type of request: This is a ...

[*] bug report
[ ] feature request

# Detailed description

When setting up a FIFO SNS topic with a FIFO SQS subscriber, in the case where a `MessageGroupId` is sent to the SNS topic it fails when being sent to the SQS queue as the `MessageGroupId` isn't passed along.

## Expected behavior

`MessageGroupId` should be passed along to the SQS queue

## Actual behavior

It's not passed along and it will error with the message:

```An error occurred (MissingParameter) when calling the SendMessage operation: The request must contain the parameter MessageGroupId.```


I believe the error is around here:
https://github.com/localstack/localstack/blob/master/localstack/services/sns/sns_listener.py#L295

# Steps to reproduce

```
        aws sns create-topic --attributes=FifoTopic=true --name local_sns --endpoint-url=http://localstack:4566
        aws sqs create-queue --endpoint-url=http://localstack:4566 --queue-name local_queue
        aws --endpoint-url=http://localstack:4566 sns subscribe --topic-arn arn:aws:sns:eu-west-1:000000000000:local_sns --protocol sqs --notification-endpoint http://localstack:4566/000000000000/local_queue
```

Then sending a new message to the topic with a messagegroupid results in the error above.


## Command used to start LocalStack

Docker compose

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

...

'User-Agent': 'Amazon Simple Notification Service Agent'
                    },
                    data=message_body,
                    verify=False
                )
                response.raise_for_status()
            except Exception as exc:
                LOG.info('Received error on sending SNS message, putting to DLQ (if configured): %s' % exc)
                sns_error_to_dead_letter_queue(subscriber['SubscriptionArn'], req_data, str(exc))
        elif subscriber['Protocol'] == 'application':
            try:
                sns_client = aws_stack.connect_to_service('sns')
                sns_client.publish(TargetArn=subscriber['Endpoint'], Message=message)
            except Exception as exc:
                LOG.warning('Unable to forward SNS message to SNS platform app: %s %s' % (exc, traceback.format_exc()))
                sns_error_to_dead_letter_queue(subscriber['SubscriptionArn'], req_data, str(exc))
        else:
            LOG.warning('Unexpected protocol "%s" for SNS subscription' % subscriber['Protocol'])
def publish_message(topic_arn, req_data, subscription_arn=None, skip_checks=False):
    message = req_data['Message'][0]
    message_id = str(uuid.uuid4())
    if topic_arn and ':endpoint/' in topic_arn:
        
        cache = PLATFORM_ENDPOINT_MESSAGES[topic_arn] = PLATFORM_ENDPOINT_MESSAGES.get(topic_arn) or []
        cache.append(req_data)
    LOG.debug('Publishing message to TopicArn: %s | Message: %s' % (topic_arn, message))
    start_thread(
        lambda _: message_to_subscribers(message_id, message, topic_arn, req_data, subscription_arn, skip_checks))
    return message_id
def do_delete_topic(topic_arn):