Issue with awsProvider.js : "Cannot use 'in' operator to search for '0'"
# This is a Bug Report

## Description

* What went wrong?

I'm deploying a package with the command "serverless deploy -v --stage cicd" with CodeBuild and I'm getting the error message below. I don't have much more information to give since I have no idea what's causing this issue.

The deployment is done by CodeBuild, Lerna is used to deploy several packages at once. Another package without any function is deployed properly before the failure for this one.

It is to be noted that the package was working fine yesterday. I reset the repository to a state CodeBuild already succeeded to build and delete the whole stack to be sure no change through the console has been done to the resources. The error is still appearing.

* What did you expect should have happened?
Proper deployment since it the yaml file has been proven to be able to be successfully built.

* What was the config you used?

serverless.yml:
 ```yaml
plugins:
  - serverless-webpack

# Enable auto-packing of external modules
custom:
  webpack:
    webpackConfig: ./webpack.config.js
    includeModules: true
              
provider:
  name: aws
  runtime: nodejs8.10
  stage: dev
  region: eu-central-1
  environment:
    STAGE: ${opt:stage, self:provider.stage}
    BUCKET_NAME: <BucketName>
  iamRoleStatements:
    -  Effect: "Allow"
       Action:
         - "s3:ListBucket"
       Resource:
         Fn::Join:
           - ""
           - - "arn:aws:s3:::"
             - Ref: S3Bucket
    -  Effect: "Allow"
       Action:
         - "s3:GetObject"
       Resource:
         Fn::Join:
           - ""
           - - "arn:aws:s3:::"
             - Ref: S3Bucket
             - "/*"
  vpc:
    securityGroupIds:
      - ${cf:<otherPackageName>.SecurityGroup}
    subnetIds:
      - ${cf:<otherPackageName>.Subnet1}
      - ${cf:<otherPackageName>.Subnet2}
      - ${cf:<otherPackageName>.Subnet3}     
 
package:
  individually: true

functions:
    ${file(./serverless_functions.yml):functions}
  
resources:
  - ${file(./serverless_s3.yml)}
 ```
serverles_functions.yml:
 ```yaml
functions:
  <functionName>:
    handler: src/handler.main
    environment:
        DB_USER: ${file(./db_config.json):dbuser} 
        DB_PSWD: ${file(./db_config.json):dbpwd}
        DB_ENDPOINT: ${cf:<otherPackageName>.Endpoint}
    events:
      - S3:
            bucket: ${self:provider.environment.BUCKET_NAME}
            event: s3:ObjectCreated:*
            rules:
            - suffix: .csv
 ```
handler.js:

 ```javascript
import AWS from "aws-sdk";
export const main = (event, context, callback) => {
	console.log('start');
	var s3 = new AWS.S3();
	var params = {
		Bucket: process.env.BUCKET_NAME, 
		Key: decodeURIComponent(event.Records[0].s3.object.key.replace(/\+/g, ' '))
	};
	console.log('event Key:' + params.Key);
	console.log('retrieving object...');
	
	s3.getObject(params, function(err, data) {
		if (err) {
			console.log(err, err.stack) // an error occurred
		}else {
			console.log(data); 
		}
	});
}	
 ```
* What stacktrace or error message from your provider did you see?
  
  Serverless plugin "/codebuild/output/src417638977/src/packages/backend/node_modules/serverless/lib/plugins/aws/provider/awsProvider.js" initialization errored: Cannot use 'in' operator to search for '0' in ${file(./serverless_functions.yml):functions} 


## Additional Data

* ***Serverless Framework Version you're using***: ^1.35.0
* ***Operating System***:  linux
* ***To Be Noted***:
The S3 event in serverless_functions.yml isn't working. While I will greatly appreciate if you find out why, it didn't prevent the deployment up until now so it shouldn't be related to the issue.


EDIT: the problem seems to come from V1.36, blocking version to V1.35 fixes the issue