public void loadRaces() {
		com.google.gson.GsonBuilder gb = new com.google.gson.GsonBuilder();

		gb.registerTypeAdapter(Race.class, new mud.misc.json.RaceAdapter());

		com.google.gson.Gson gson = gb.create();

		String path = WORLD_DIR + world + "\\";
		
		debug("races: " + path + "races.json");
		debug("");

		try {
			String[] temp = Utils.loadStrings(path + "races.json");
			String json = Utils.join(temp, " ");

			Race[] racesArr = gson.fromJson(json, Race[].class);

			races.addAll(Arrays.asList(racesArr));
		}
		catch (final Exception e) {
			// TODO what exception are we catching?
			System.out.println("--- Stack Trace ---");
			e.printStackTrace();
		}

		for (final Race r : races) {
			debug("* Race");
			debug("Name: " + r.getName());
			debug("Id: " + r.getId());
			debug("Stat Adjust: " + Arrays.asList(r.getStatAdjust()));
			debug("Restricted?: " + r.isRestricted());
			debug("Can Fly?: " + r.canFly());
			debug("");
		}

		System.out.println("Races: " + races);
	}