public static void main(String[] args) throws IOException{
	String city = args[0];
	String folder = Settings.getInstance().getFolder();
	
	/**
	 * This parameter controls the size of the grid that we will create
	 * around the city.
	 * WARNING: if the city is either small or very large, you might want 
	 * to change the value of this parameter.
	 * 
	 * TODO: include it the Settings?
	 */
	Integer size = 100;
	
	// Get the central point of the city and the Foursquare API credentials, 
	// both specified in the Settings.
	double[] centroid = new double[]{Settings.getInstance().getCityCenterLat(city),Settings.getInstance().getCityCenterLng(city)};
	Map<String, String> credentials = Settings.getInstance().getCityCredentials(city);
	
	Settings.getInstance().checkFileHierarchy(city);

	// The crawler can run indefinitely in order to obtain a complete list
	// of venues.
	while(true){
	  try {
		incrementalFsqCrawl(city, centroid, folder,  credentials.get("client_id"),  credentials.get("client_secret"), size);
	  } catch (NumberFormatException e) {
		e.printStackTrace();
	  } catch (IOException e) {
		e.printStackTrace();
	  } catch(Exception e) {
		continue;
	  }

	  System.out.println("Finished crawling everything. Pausing 10 minutes before restarting...");

	  try {
		Thread.sleep(600000);
	  } catch (InterruptedException e) {
		e.printStackTrace();
	  }
	} // while
  } // main