/// <summary>
        /// Ask Factual to match the entity for the attributes specified by MatchQuery
        /// </summary>
        /// <param name="tableName"></param>
        /// <param name="query"></param>
        /// <returns>the response of running a match query against Factual.</returns>
        public string Match(string tableName, MatchQuery query)
        {
            var     response = RawQuery(UrlForMatch(tableName), query.ToUrlQuery());
            dynamic json     = JsonConvert.DeserializeObject(response);

            if (((int)json.response.included_rows) == 1)
            {
                return((string)json.response.data[0].factual_id);
            }
            else
            {
                return(null);
            }
        }
 /// <summary>
 /// Ask Factual to match the entity for the attributes specified by MatchQuery
 /// </summary>
 /// <param name="tableName"></param>
 /// <param name="query"></param>
 /// <returns>the response of running a match query against Factual.</returns>
 public string Match(string tableName, MatchQuery query)
 {
     var response = RawQuery(UrlForMatch(tableName), query.ToUrlQuery());
     dynamic json = JsonConvert.DeserializeObject(response);
     if (((int) json.response.included_rows) == 1)
         return (string) json.response.data[0].factual_id;
     else
         return null;
 }