*/
	public void backup(final String filename) {
		// TODO should this be debug or the main log?

		// Accounts
		log("Backing up Accounts...");
		
		//saveAccounts();
		
		log("Done.");

		// Database
		log("Backing up Database...");

		// NOTE: real file modification occurs here
		boolean using_filename = ( "".equals(filename) );
		
		if( using_filename ) {
			log("Using specified filename - \'" + filename + "\'");
			//System.out.println("Using specified filename - \'" + filename + "\'");
			saveDB(filename);
		}
		else saveDB();
		
		log("Database Backup - Done.");
		
		// TODO work on this part, maybe write some type adapters?
		
		/// JSON
		/*GsonBuilder builder = new GsonBuilder(); // Or use new GsonBuilder().create();

		builder.setPrettyPrinting();

		Gson gson = builder.create();

		for(final MUDObject object : objectDB.getObjects()) {
			System.out.println(object.getDBRef() + " : " + object.getName());
			
			final String fileName = DATA_DIR + "json\\" + object.getDBRef() + ".json";;
			
			Utils.saveStrings(fileName, new String[] { gson.toJson(object) });
		}*/
		
		log("Done.");
		
		/* Spells */
		
		//log("Backing up Spells...");
		
		//saveSpells();

		//log("Done.");
		
		/* Help Files */
		
		//log("Backing up Help Files...");
		
		//saveHelpFiles();
		
		//log("Done.");
		
		/* Topic Files */
		
		//log("Backing up Topic Files...");
		
		//saveTopicFiles();
		
		//log("Done.");
	}