Hey, first thanks for this amazing project!

I was trying to use serverless and localstack together, and I was having problems deploying a lambda function. In the logs I was getting errors 502 all the time:

```Serverless: Recoverable error occurred (502), sleeping for 5 seconds. Try 4 of 4

  Serverless Error ---------------------------------------

  502
```

I then start tracking the error, since this one above didn't give me much information, and I ended up at Serverless calling cloud formation's `describe-stack-events` using the unique stack id, instead of the stack name:

https://github.com/serverless/serverless/blob/f93b27bf684d9a14b1e67ec554a7719ca3628135/lib/plugins/aws/lib/monitorStack.js#L33

That is a legit request, as seen in the aws docs:

https://docs.aws.amazon.com/cli/latest/reference/cloudformation/describe-stack-events.html#options

The cloudformation mock within localstack accepts the stackName without problems:

```
> aws --endpoint-url=http://localhost:4581 cloudformation list-stacks    
{
    "StackSummaries": [
        {
            "StackId": "arn:aws:cloudformation:us-east-1:000000000000:stack/steamRoller-local/fcbeb0ef-9739-44a2-8a37-f599bbf4e5f3",
            "StackName": "steamRoller-local",
            "CreationTime": "2011-05-23T15:47:44Z",
            "StackStatus": "UPDATE_COMPLETE",
            "TemplateDescription": "The AWS CloudFormation template for this Serverless application"
        }
    ]
}

> aws --endpoint-url=http://localhost:4581 cloudformation describe-stack-events --stack-name steamRoller-local
{
    "StackEvents": [
        {
            "StackId": "arn:aws:cloudformation:us-east-1:000000000000:stack/steamRoller-local/fcbeb0ef-9739-44a2-8a37-f599bbf4e5f3",
            "EventId": "a49fd67b-ce7b-4a33-9a00-6ebe2242adae",
            "ResourceStatus": "UPDATE_COMPLETE",
            "ResourceType": "AWS::CloudFormation::Stack",
            "Timestamp": "2019-08-10T13:44:44.550022Z",
            "StackName": "steamRoller-local",
            "PhysicalResourceId": "arn:aws:cloudformation:us-east-1:000000000000:stack/steamRoller-local/fcbeb0ef-9739-44a2-8a37-f599bbf4e5f3",
            "StackName": "steamRoller-local",
            "PhysicalResourceId": "arn:aws:cloudformation:us-east-1:000000000000:stack/steamRoller-local/fcbeb0ef-9739-44a2-8a37-f599bbf4e5f3",
            "LogicalResourceId": "steamRoller-local"
        },
        {
            "StackId": "arn:aws:cloudformation:us-east-1:000000000000:stack/steamRoller-local/fcbeb0ef-9739-44a2-8a37-f599bbf4e5f3",
            "EventId": "35ef5c91-99a0-483d-b6b7-e01ee3dda2dd",
            "ResourceStatus": "CREATE_IN_PROGRESS",
            "ResourceType": "AWS::CloudFormation::Stack",
            "Timestamp": "2019-08-10T13:37:51.124574Z",
            "ResourceStatusReason": "User Initiated",
            "StackName": "steamRoller-local",
            "PhysicalResourceId": "arn:aws:cloudformation:us-east-1:000000000000:stack/steamRoller-local/fcbeb0ef-9739-44a2-8a37-f599bbf4e5f3",
            "LogicalResourceId": "steamRoller-local"
        }
    ]
}
```

But it doesn't accept the stackId as the argument (the one used by serverless):

```
> aws --endpoint-url=http://localhost:4581 cloudformation describe-stack-events --stack-name arn:aws:cloudformation:us-east-1:000000000000:stack/steamRoller-local/fcbeb0ef-9739-44a2-8a37-f599bbf4e5f3

An error occurred (502) when calling the DescribeStackEvents operation (reached max retries: 4): Bad Gateway
```

If I have a look at the docker logs I can see:

```
"invalid XML received:\n%s" % (e, xml_string)) botocore.parsers.ResponseParserError: Unable to parse response (syntax error: line 1, column 54), invalid XML received:

b'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">\n<title>500 Internal Server Error</title>\n<h1>Internal Server Error</h1>\n<p>The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.</p>\n'
```

That matches what other colleagues were seeing: https://github.com/localstack/localstack/issues/965

Please, make localstack's cloudformation handle the stackId in describe-stack-events and other actions that accepts it. This is a blocker for using localstack for me :/

Thanks
if 'S3Bucket' in function_code:
        s3_client = aws_stack.connect_to_service('s3')
        bytes_io = BytesIO()
        try:
            s3_client.download_fileobj(function_code['S3Bucket'], function_code['S3Key'], bytes_io)
            zip_file_content = bytes_io.getvalue()
        except Exception as e:
            raise ClientError('Unable to fetch Lambda archive from S3: %s' % e, 404)
    elif 'ZipFile' in function_code:
        zip_file_content = function_code['ZipFile']
        zip_file_content = base64.b64decode(zip_file_content)
    else:
        raise ClientError('No valid Lambda archive specified.')
    return zip_file_content
def get_java_handler(zip_file_content, handler, main_file):
    """Creates a Java handler from an uploaded ZIP or JAR.
    :type zip_file_content: bytes
    :param zip_file_content: ZIP file bytes.
    :type handler: str
    :param handler: The lambda handler path.
    :type main_file: str
    :param main_file: Filepath to the uploaded ZIP or JAR file.
    :returns: function or flask.Response
    """
    if not is_jar_archive(zip_file_content):
        with zipfile.ZipFile(BytesIO(zip_file_content)) as zip_ref:
            jar_entries = [e for e in zip_ref.infolist() if e.filename.endswith('.jar')]
            if len(jar_entries) != 1:
                raise ClientError('Expected exactly one *.jar entry in zip file, found %s' % len(jar_entries))
            zip_file_content = zip_ref.read(jar_entries[0].filename)