private static GridCoordinate move(GridCoordinate gc, int direction)
	{
		if(direction == WordSearchGenerator.DIR_HORIZONTAL)
		{
			return new GridCoordinate(gc.getX() + 1, gc.getY());
		}
		else if(direction == WordSearchGenerator.DIR_VERTICAL)
		{
			return new GridCoordinate(gc.getX(), gc.getY() + 1);
		}
		else if(direction == WordSearchGenerator.DIR_DIAG_UP)
		{
			return new GridCoordinate(gc.getX() + 1, gc.getY() - 1);
		}
		else if(direction == WordSearchGenerator.DIR_DIAG_DOWN)
		{
			return new GridCoordinate(gc.getX() + 1, gc.getY() + 1);
		}
		else if(direction == WordSearchGenerator.DIR_R_HORIZONTAL)
		{
			return new GridCoordinate(gc.getX() - 1, gc.getY());
		}
		else if(direction == WordSearchGenerator.DIR_R_VERTICAL)
		{
			return new GridCoordinate(gc.getX(), gc.getY() - 1);
		}
		else if(direction == WordSearchGenerator.DIR_R_DIAG_UP)
		{
			return new GridCoordinate(gc.getX() - 1, gc.getY() - 1);
		}
		else  //  Reverse Diagonal Down
		{
			return new GridCoordinate(gc.getX() - 1, gc.getY() + 1);
		}
	}