code: function _isSubject(v) {
    // Note: A value is a subject if all of these hold true:
    // 1. It is an Object.
    // 2. It is not a @value, @set, or @list.
    // 3. It has more than 1 key OR any existing key is not @id.
    var rval = false;
    if(_isObject(v) &&
      !(('@value' in v) || ('@set' in v) || ('@list' in v))) {
      var keyCount = Object.keys(v).length;
      rval = (keyCount > 1 || !('@id' in v));
    }
    return rval;
  }
docs: Returns true if the given value is a subject with properties.
  
  @param v the value to check.
  
  @return true if the value is a subject with properties, false if not.