Hi,

I'm using the latest localstack docker image which is currently `0.9.5`.

The following error occurs when trying to use CloudFormation to create Dead Letter Queue and Queue in same template.
`An error occurred (AWS.SimpleQueueService.NonExistentQueue) when calling the CreateStack operation: Could not find DLQ for arn:aws:sqs:elasticmq:000000000000:test-dlq`

Example template
```yaml
AWSTemplateFormatVersion: 2010-09-09
Resources:
  DeadLetterQueue:
    Type: AWS::SQS::Queue
    Properties:
      QueueName: 'test-dlq'
      DelaySeconds: 0
      MaximumMessageSize: 262144 # 256KB
      MessageRetentionPeriod: 1209600 # 14 Days
      VisibilityTimeout: 120 # 2 minutes
  Queue:
    Type: AWS::SQS::Queue
    DependsOn: DeadLetterQueue
    Properties:
      QueueName: 'test-queue'
      DelaySeconds: 0
      MaximumMessageSize: 262144 # 256KB
      MessageRetentionPeriod: 345600 # 4 Days
      RedrivePolicy:
        deadLetterTargetArn:
          Fn::GetAtt:
            - DeadLetterQueue
            - Arn
        maxReceiveCount: 1
      VisibilityTimeout: 120 # 2 minutes
```

Note, I even tried to use the `DependsOn` property to force it to create the DLQ first but to no avail.

Command used with `awslocal`...
```shell
awslocal cloudformation create-stack --stack-name test1 --template-body file://./queues.template.dlq.yml
```
Using the same template in AWS CloudFormation works as expected.

*Debug log output*
```
localstack_1  | 2019-07-10T10:35:16:DEBUG:__main__: Currently updating stack resource test1/DeadLetterQueue: None 
localstack_1  | 2019-07-10T10:35:16:DEBUG:__main__: Deploying CloudFormation resource: {'Type': 'AWS::SQS::Queue', 'Properties': {'QueueName': 'test-dlq', 'DelaySeconds': 0, 'MaximumMessageSize': 262144, 'MessageRetentionPeriod': 1209600, 'VisibilityTimeout': 120}}
localstack_1  | 2019-07-10T10:35:16:DEBUG:localstack.utils.cloudformation.template_deployer: Deploying resource type "SQS::Queue" id "DeadLetterQueue"
localstack_1  | 2019-07-10T10:35:16:DEBUG:localstack.utils.cloudformation.template_deployer: Request for creating resource type "SQS::Queue": {'QueueName': 'test-dlq'}
localstack_1  | 10:35:16.440 [elasticmq-akka.actor.default-dispatcher-3] INFO  o.elasticmq.actor.QueueManagerActor - Creating queue QueueData(test-dlq,MillisVisibilityTimeout(30000),PT0S,PT0S,2019-07-10T10:35:16.408Z,2019-07-10T10:35:16.408Z,None,false,false,None,None,Map()) 
localstack_1  | 2019-07-10T10:35:16:DEBUG:__main__: Currently updating stack resource test1/Queue: None
localstack_1  | 2019-07-10T10:35:16:ERROR:__main__: Unable to parse and create resource "Queue": 400 Bad Request: <?xml version="1.0" encoding="UTF-8"?> 
localstack_1  | <Response>
localstack_1  | <Errors>
localstack_1  | <Error> 
localstack_1  | <Code>AWS.SimpleQueueService.NonExistentQueue</Code>
localstack_1  | <Message>Could not find DLQ for arn:aws:sqs:elasticmq:000000000000:test-dlq</Message>
localstack_1  |
localstack_1  | </Error>
localstack_1  | </Errors>
localstack_1  | <RequestID>7a62c49f-347e-4fc4-9331-6e8eEXAMPLE</RequestID> 
localstack_1  | </Response>
localstack_1  | 2019-07-10T10:35:16:INFO:werkzeug: 127.0.0.1 - - [10/Jul/2019 10:35:16] "POST / HTTP/1.1" 400 -
localstack_1  | 2019-07-10T10:35:16:DEBUG:localstack.services.cloudformation.cloudformation_listener: Error response from CloudFormation (400) POST /: b'<?xml version="1.0" encoding="UTF-8"?>\n  <Response>\n    <Errors>\n      <Error>\n        <Code>AWS.SimpleQueueService.NonExistentQueue</Code>\n        <Message>Could not find DLQ for arn:aws:sqs:elasticmq:000000000000:test-dlq</Message>\n        \n      </Error>\n    </Errors>\n  <RequestID>7a62c49f-347e-4fc4-9331-6e8eEXAMPLE</RequestID>\n</Response>'
```

Can you help? Thanks.
sm_name = resolve_refs_recursively(stack_name, sm_name, resources)
            sfn_client = aws_stack.connect_to_service('stepfunctions')
            state_machines = sfn_client.list_state_machines()['stateMachines']
            sm_arn = [m['stateMachineArn'] for m in state_machines if m['name'] == sm_name]
            if not sm_arn:
                return None
            result = sfn_client.describe_state_machine(stateMachineArn=sm_arn[0])
            return result
        elif resource_type == 'StepFunctions::Activity':
            act_name = resource_props.get('Name') or resource_id
            act_name = resolve_refs_recursively(stack_name, act_name, resources)
            sfn_client = aws_stack.connect_to_service('stepfunctions')
            activities = sfn_client.list_activities()['activities']
            result = [a['activityArn'] for a in activities if a['name'] == act_name]
            if not result:
                return None
            return result[0]
        if is_deployable_resource(resource):
            LOG.warning('Unexpected resource type %s when resolving references of resource %s: %s' %
                        (resource_type, resource_id, resource))
    except Exception as e:
        check_not_found_exception(e, resource_type, resource, resource_status)
    return None
def check_not_found_exception(e, resource_type, resource, resource_status):
    
    markers = ['NoSuchBucket', 'ResourceNotFound', '404']
    if not list(filter(lambda marker, e=e: marker in str(e), markers)):
        LOG.warning('Unexpected error retrieving details for resource %s: %s %s - %s %s' %
            (resource_type, e, traceback.format_exc(), resource, resource_status))
def extract_resource_attribute(resource_type, resource, attribute):