code: function guessModel(columns, options) {
    options = options || {};
    var model = { fields: {}, options: { indexes: [] }};
  
    // Since we are guessing, we should make a primary key
    model.fields.primKey = { name: "primKey", type: Sequelize.INTEGER, autoIncrement: true, primaryKey: true };
  
    // Go through each column
    _.each(columns, function(data, inputColumn) {
      var field = {};
  
      // Make names
      field.input = inputColumn;
      field.name = inputColumn.length === 1 ?
        "column_" + inputColumn.toLowerCase() : utils.toSQLName(inputColumn);
  
      // Guess type
      field.type = dataToType(data, inputColumn, options);
      model.fields[field.name] = field;
  
      // Make indexes based on column name
      if (shouldIndex(field.name)) {
        model.options.indexes.push({ fields: [ field.name ]});
      }
    });
  
    // Make key
    if (options.key && options.tableName) {
      model.options.indexes.push({
        fields: _.map(options.key.split(","), function(c) {
          return utils.toSQLName(c);
        }),
        name: utils.toSQLName(options.tableName + options.key),
        unique: true
      });
    }
  
    return model;
  }
docs: Guess model from data.  Takes in object (or arrary) of arrays of values. For instance: { columnA: [1, 2, 3], columnB: ["a", "b"] }  And should return a model object { fields: { columnA: { name: "columnA", input: "A", // sequelize options // http://sequelize.readthedocs.org/en/latest/docs/models-definition/ } }, // Options for Sequelize models options: { indexes [ { // sequelize options } ] } }