private static List<Float> getRandomNumbersThatSumToOne(int numToGet)
		throws Exception
	{
		if( numToGet < 2 )
			throw new Exception("Please call for at least 2");
		
		List<Float> tempList = new ArrayList<Float>();

		for(int x=0; x < numToGet -1 ; x++)
			tempList.add(random.nextFloat());
		
		Collections.sort(tempList);
		
		List<Float> returnList = new ArrayList<Float>();
		
		returnList.add(tempList.get(0));
		
		for( int x=1; x < numToGet -1; x++)
			returnList.add(tempList.get(x)-tempList.get(x-1));
		
		returnList.add(1 - tempList.get(numToGet-2));
		
		//sanity checks
		if( returnList.size() != numToGet )
			throw new Exception("Logic error");
		
		float sum = 0;
		
		for( Float f : returnList )
			sum += f;
		
		if( Math.abs(sum - 1) > 0.0001)
			throw new Exception("Logic error");
		
		return returnList;
	}