private static Entry[] merge(Entry[] list1, Entry[] list2) {
		Entry[] output = new Entry[list1.length + list2.length];
		int p1 = 0, p2 = 0;
		for(int i = 0; i < output.length; i++) {
			if(p2 >= list2.length) {
				output[i] = list1[p1];
				p1++;
			} else if(p1 >= list1.length || list1[p1].getScore() < list2[p2].getScore()) {
				output[i] = list2[p2];
				p2++;
			} else if(list1[p1].getScore() > list2[p2].getScore()) {
				output[i] = list1[p1];
				p1++;
			} else if(list1[p1].getScore() == list2[p2].getScore()) {
				Entry[] sortedByName = bubbleSort(new Entry[] {list1[p1], list2[p2]});
				output[i] = sortedByName[0];
				output[i+1] = sortedByName[1];
				p1++;
				p2++;
				i++;
			} else {
				System.out.println("Error!");
				break; // Something has gone horribly wrong.
			}
		}
		return output;
	}