I'm currently working on a process by which a kinesis stream triggers a lambda function to process a batch of records.  Whenever the `putRecords` method is used with a large amount of records, the call to trigger the lambda will fail b/c the argument list is too long.  The command is:

```
CONTAINER_ID="$(docker create  -e AWS_LAMBDA_FUNCTION_INVOKED_ARN="$AWS_LAMBDA_FUNCTION_INVOKED_ARN" -e AWS_LAMBDA_FUNCTION_NAME="$AWS_LAMBDA_FUNCTION_NAME" -e AWS_LAMBDA_EVENT_BODY="$AWS_LAMBDA_EVENT_BODY" -e AWS_LAMBDA_FUNCTION_VERSION="$AWS_LAMBDA_FUNCTION_VERSION" -e LOCALSTACK_HOSTNAME="$LOCALSTACK_HOSTNAME"  "lambci/lambda:nodejs8.10" "index.handler")"
```

Instead of sending the event body to the lambda via an argument list, the body should be written to a file that is then copied into the docker and then the command should reference the file  in the arguments list.

<!-- Love localstack? Please consider supporting our collective:
👉  https://opencollective.com/localstack/donate -->
:return: None
        """
        LOG.info('Checking if there are idle containers.')
        current_time = int(time.time() * 1000)
        for func_arn, last_run_time in dict(self.function_invoke_times).items():
            duration = current_time - last_run_time
            
            if duration < MAX_CONTAINER_IDLE_TIME_MS:
                continue
            
            self.destroy_docker_container(func_arn)
    def start_idle_container_destroyer_interval(self):
        """
        Starts a repeating timer that triggers start_idle_container_destroyer_interval every 60 seconds.
        Thus checking for idle containers and destroying them.
        :return: None
        """
        self.idle_container_destroyer()
        threading.Timer(60.0, self.start_idle_container_destroyer_interval).start()
    def get_container_name(self, func_arn):
        """
        Given a function ARN, returns a valid docker container name.
        :param func_arn: The ARN of the lambda function.
        :return: A docker compatible name for the arn.
        """
        return 'localstack_lambda_' + re.sub(r'[^a-zA-Z0-9_.-]', '_', func_arn)
class LambdaExecutorSeparateContainers(LambdaExecutorContainers):
    def prepare_execution(self, func_arn, env_vars, runtime, command, handler, lambda_cwd):
        entrypoint = ''
        if command: