code: public int getScore(Map<String, Object> data)
  	{
  		if(! hasSerializedFields)
  		{
  			return 0;
  		}
  
  		int score = 0;
  
  		for(Argument arg : arguments)
  		{
  			if(arg instanceof FactoryDefinition.SerializedArgument)
  			{
  				if(data.containsKey(((SerializedArgument) arg).name))
  				{
  					score++;
  				}
  			}
  		}
  
  		return score;
  	}
docs: Get a score for this factory based on the given data. The higher the
  score the more arguments were found.
  
  @param data
  @return