async processEntities (actions) {
    const { exclude: userExclude = [] } = this.options
    const capturedEntities = []
    // create unique array of user passed exclude and defaultExcludes
    const exclude = userExclude.length ? uniq(userExclude) : DEFAULT_EXCLUDES

    // loop through all the properties in apiSchema and create Entity instances
    // excluding any property with a key that is in DEFAULT_EXCLUDES
    forEach(this.apiSchema, (url, entityType) => {
      if (!exclude.includes(entityType)) {
        // creating an instance of the entity class, see ./entities/*
        this.entities[entityType] = new Entity(this, actions, { entityType, url })

        capturedEntities.push(this.entities[entityType])
      }
    })

    await Promise.all(capturedEntities.map(entity => entity.initialize()))
  }
This method loops over the apiShema created in fetchJsonApiSchema
if property key (in the apiScheme object) is not in the excludes list, it creates a new instance