code: func (c *Conn) Count(index string, _type string, args map[string]interface{}, query interface{}) (CountResponse, error) {
  	var url string
  	var retval CountResponse
  	url = fmt.Sprintf("/%s/%s/_count", index, _type)
  	body, err := c.DoCommand("GET", url, args, query)
  	if err != nil {
  		return retval, err
  	}
  	if err == nil {
  		// marshall into json
  		jsonErr := json.Unmarshal(body, &retval)
  		if jsonErr != nil {
  			return retval, jsonErr
  		}
  	}
  	return retval, err
  }
docs: // Count allows the caller to easily execute a query and get the number of matches for that query.
  // It can be executed across one or more indices and across one or more types.
  // The query can either be provided using a simple query string as a parameter,
  // or using the Query DSL defined within the request body.
  // http://www.elasticsearch.org/guide/reference/api/count.html