public void run(CommandSender sender, Command cmd, String label, String[] args) {
		String key = args[0];
		if(key.equalsIgnoreCase("add")){
			add(sender, args);
			return;
		}
		if(key.equalsIgnoreCase("remove")){
			remove(sender, args);
			return;
		}
		if(key.equalsIgnoreCase("create")){
			create(sender, args);
			return;
		}
		if(key.equalsIgnoreCase("delete")){
			delete(sender, args);
			return;
		}
		if(key.equalsIgnoreCase("promote")){
			promote(sender, args);
			return;
		}
		if(key.equalsIgnoreCase("demote")){
			demote(sender, args);
			return;
		}
		if(xm.getXgroup().isGroup(key)){
			inherit(sender, args);
			return;
		}
		if(key.equalsIgnoreCase("reload")){
			xm.reloadAll();
			sender.sendMessage(Green + "Xperms has been reloaded");
			return;
		}
		if(key.equalsIgnoreCase("reset")){
			xm.resetAll();
			sender.sendMessage(Green + "Xperms files have been reset");
			return;
		}
		if(key.equalsIgnoreCase("check")){
			boolean update = new UpdateChecker(xm, xm.getVersion()).Check();
			if(update){
				sender.sendMessage(DarkGrey + "An update is available for Xperms! download it here: " + ChatColor.GREEN + WebsiteURL);
			}
			sender.sendMessage(DarkGrey + "No update is available at this time");
			return;
		}
		if(key.equalsIgnoreCase("help")){
			sendHelp(sender);
			return;
		}
		if(key.equals("?")){
			sendHelp(sender);
			return;
		}
		sender.sendMessage(DarkGrey + "Strange argument provided: " + Red + key);
		sendHelp(sender);
	}