public Cogbot() {
		if (Cogbot.instance != null)
			throw new InstantiationError("Cannot create duplicate instances of Cogbot in one JVM context!");
		Cogbot.instance = this;
		Cogbot.log = Logger.getLogger("cogbot");
		rootLogger = new CogLog("root", null);

		gc = new CogGC(Cogbot.log);
		connectors = new ArrayList<IConnector>();
		cogs = new ArrayList<CogWrapper>();

		taskService = Executors.newFixedThreadPool(32);
		pollService = Executors.newScheduledThreadPool(32);

		authenticationAgent = new AuthenticationAssistant(new File("./tokens.db"));
	}