public ChestKitsConfiguration(Configuration config, Logger log) {
		kits = new HashMap<String, ChestKitsKit>();

		List<String> listOfKits = config.getStringList("kits");
		if (listOfKits != null) {
			for (String kitName : listOfKits) {
				log.info("Loading kit " + kitName);
				List<?> items = config.getList("kititems." + kitName);
				if (items == null) {
					log.severe("Kit " + kitName + " has no items defined! Skipping...");
					continue;
				}
	
				List<ItemStack> itemStacks = new LinkedList<ItemStack>();
				for (Object o : items) {
					if (o instanceof ItemStack) {
						itemStacks.add((ItemStack)o);
					} else {
						log.severe("Invalid object found in configuration for kit " + kitName + ": " + o);
					}
				}
				
				long cooldown = config.getLong("kitcooldown." + kitName, 0L);
				
				ChestKitsKit kit = new ChestKitsKit(kitName, itemStacks);
				kit.setCooldown(cooldown);
				
				addKit(kitName, kit);
			}
		}
		
		log.info("Successfully loaded " + kits.size() + " kits.");
	}