public void shutdown() {
		for (CoreListener listener : this.listeners) {
			listener.shutdownInitiated();
		}
		
		for (Service service : this.servicesMap.values()) {
			if (service.getStatus() != Service.Status.STOPPED) {
				stopService(service);
			}
		}
		this.running = false;
	}