public void load(){
		if (source.exists()){
			try {
				BufferedReader in = new BufferedReader(new FileReader(source));
				String line = "";
				int chestCount = 0;
				while (line != null){
					line = in.readLine();
					RepairChest thisChest = new RepairChest(line);
					chests.add(thisChest);
					chestLocation.put(thisChest.getLocation(),thisChest);
					plugin.verbose(thisChest.getOwnerName() + "' RepairChest loaded!");
					chestCount++;
				}
				in.close();
				plugin.verbose(chestCount + " repair chests!");
			}
			catch (FileNotFoundException e) {
				// Stupid Java... We'll NEVER GET HERE, unless the file stops existing in under a nanosecond!
				e.printStackTrace();
				plugin.error("How the hell did THAT happen?!");
			}
			catch (IOException e) {
				e.printStackTrace();
				plugin.error("IOException reading chest file " + source.getAbsolutePath());
				if (!source.canRead()){
					plugin.error("CAN'T READ FROM " + source.getAbsolutePath());
				}
			} catch (ParseException e) {
				e.printStackTrace();
				plugin.error("Parse Exception while reading chest file: " + e.getMessage());
			}
		}
		else {
			plugin.out("RepairChestFile "+source.getAbsolutePath()+" does not exist:  Creating new!");
			try {
				source.createNewFile();
			} catch (IOException e) {
				e.printStackTrace();
				plugin.error("IOException creating chest file " + source.getAbsolutePath());
				if (!source.canWrite()){
					plugin.error("CAN'T WRITE TO " + source.getAbsolutePath());
				}
			}
		}
	}