public void addValidColor(char c){
		if(validColors.contains(c)) return;			//don't want to add it again
		for(Clique clique : cliques)
			for(Cell cell : clique.getCells())
				if(cell.getColor() == c) return;	//illegal if another Cell in a related Clique already has it assigned

		//can just add it if the list is empty
		if(validColors.isEmpty()){
			validColors.add(c);
			return;
		}
		//keep the colors in order for proper iteration
		for(int i = validColors.size()-1; i >= 0; i--){
			if(c < validColors.get(i)){
				validColors.add(i, c);
				return;
			}
		}	
		
	}