code: function flattenIndex(mat) {
    var flat = _.flattenDeep(mat)
    return _.map(flat, function(o, i) {
      // check if o is string, plain concat
      return _.isString(o) ?
        i + '. ' + o :
        i + '. ' + (o['name'] || '') +
        _.map(_.omit(o, 'name'), function(v, k) {
          return '\n' + k + ': ' + v
        }).join('')
    }).join('\n')
  }
docs: Flatten and index a matrix of objects into formatted string. 'name' key will always appear first next to index.
  @param  {Array} mat Matrix of JSON objects or string.
  @return {string}     The formatted string
  
  @example
  flattenIndex([
  [{
  name: 'alice',
  id: 'ID0000001',
  email_address: 'alice@email.com'
  }],
  [{
  name: 'bob',
  id: 'ID0000002',
  email_address: 'bob@email.com'
  }],
  [{
  name: 'slackbot',
  real_name: 'slackbot',
  id: 'USLACKBOT',
  email_address: null
  }]
  ])
  // => 0. alice
  id: ID0000001
  email_address: alice@email.com
  1. bob
  id: ID0000002
  email_address: bob@email.com
  2. slackbot
  real_name: slackbot
  id: USLACKBOT
  email_address: null
  
  flattenIndex([
  [{
  name: 'alice'
  }],
  [{
  name: 'bob'
  }],
  [{
  name: 'slackbot'
  }]
  ])
  // => 0. alice
  1. bob
  2. slackbot