diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/Controller.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/Controller.java
index ecb4a9a2e7939fc82b70cb8169f4347a3f984c79..a00ef6b5ff352e61cedce30e8a9d3b3085b74556 100644
--- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/Controller.java
+++ b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/Controller.java
@@ -31,6 +31,8 @@ import de.deadlocker8.budgetmaster.logic.utils.Colors;
 import de.deadlocker8.budgetmaster.logic.utils.Strings;
 import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle;
 import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandLine;
+import de.deadlocker8.budgetmasterclient.ui.controller.settings.LocalServerSettingsController;
+import de.deadlocker8.budgetmasterclient.ui.controller.settings.SettingsController;
 import de.deadlocker8.budgetmasterclient.utils.LoadingModal;
 import fontAwesome.FontIcon;
 import fontAwesome.FontIconType;
@@ -169,6 +171,7 @@ public class Controller extends BaseController
 		{
 			settings.setServerType(ServerType.ONLINE);
 		}
+		Logger.info("Running with ServerType: " + settings.getServerType());
 		
 		currentDate = DateTime.now();
 		buttonDate.setText(currentDate.toString(DATE_FORMAT));
@@ -792,6 +795,7 @@ public class Controller extends BaseController
 	
 	public void refresh(FilterSettings newFilterSettings)
 	{
+		Logger.debug("Starting main refresh...");
 		Platform.runLater(()->{
 			LoadingModal.showModal(Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_DATA), getStage(), icon);
 		});
@@ -804,9 +808,11 @@ public class Controller extends BaseController
 				//check if server is compatible with client
 				try
 				{
+					Logger.debug("Checking server compatibility...");
 					VersionInformation serverVersion = connection.getServerVersion();
 					if(serverVersion.getVersionCode() < Integer.parseInt(Localization.getString(Strings.VERSION_CODE)))
 					{
+						Logger.debug("Server (versionCode: " + serverVersion.getVersionCode() + ") is incompatible with client (versionCode: " + Localization.getString(Strings.VERSION_CODE) + ")");
 						if(settings.getServerType().equals(ServerType.ONLINE))
 						{					
 							Platform.runLater(()->{
@@ -834,6 +840,10 @@ public class Controller extends BaseController
 						}
 						return;
 					}
+					else
+					{
+						Logger.debug("Found compatible server (versionCode: " + serverVersion.getVersionCode() + ")");
+					}
 				}
 				catch(Exception e1)
 				{
@@ -844,6 +854,7 @@ public class Controller extends BaseController
 					
 					if(e1.getMessage().contains("404"))
 					{
+						Logger.debug("Server version is incompatible with current client version (" + Localization.getString(Strings.VERSION_CODE) + ")");
 						//old server
 						Platform.runLater(()->{
 							AlertGenerator.showAlert(AlertType.WARNING,
@@ -865,6 +876,8 @@ public class Controller extends BaseController
 					return;
 				}
 				
+				Logger.debug("Connected");
+				
 				paymentHandler = new PaymentHandler();
 				paymentHandler.getPayments().addAll(connection.getPayments(currentDate.getYear(), currentDate.getMonthOfYear()));
 				paymentHandler.getPayments().addAll(connection.getRepeatingPayments(currentDate.getYear(), currentDate.getMonthOfYear()));			
@@ -880,6 +893,7 @@ public class Controller extends BaseController
 				
 				categoryBudgets = connection.getCategoryBudgets(currentDate.getYear(), currentDate.getMonthOfYear());	
 				paymentHandler.filter(newFilterSettings, new TagHandler(settings));
+				Logger.debug("Main refresh done");
 
 				Platform.runLater(() -> {
 					LoadingModal.closeModal();
diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/LocalServerSettingsController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/LocalServerSettingsController.java
similarity index 99%
rename from BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/LocalServerSettingsController.java
rename to BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/LocalServerSettingsController.java
index 4be588d8c550726501e4a7d5789643e0af50d3db..13d19c2af2c14cac122213e51cb916ab5ae6f2cd 100644
--- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/LocalServerSettingsController.java
+++ b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/LocalServerSettingsController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmasterclient.ui.controller;
+package de.deadlocker8.budgetmasterclient.ui.controller.settings;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -16,6 +16,7 @@ import de.deadlocker8.budgetmaster.logic.utils.LanguageType;
 import de.deadlocker8.budgetmaster.logic.utils.Strings;
 import de.deadlocker8.budgetmasterclient.ui.RestartHandler;
 import de.deadlocker8.budgetmasterclient.ui.cells.LanguageCell;
+import de.deadlocker8.budgetmasterclient.ui.controller.Controller;
 import de.deadlocker8.budgetmasterclient.utils.LoadingModal;
 import javafx.application.Platform;
 import javafx.fxml.FXML;
diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/OnlineServerSettingsController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/OnlineServerSettingsController.java
similarity index 98%
rename from BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/OnlineServerSettingsController.java
rename to BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/OnlineServerSettingsController.java
index 022835cc1ff5cb43fa9058d126457b921f338cf2..723a0dd2db9b4731d27080b88cb942b5cc4132d1 100644
--- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/OnlineServerSettingsController.java
+++ b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/OnlineServerSettingsController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmasterclient.ui.controller;
+package de.deadlocker8.budgetmasterclient.ui.controller.settings;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -13,6 +13,7 @@ import de.deadlocker8.budgetmaster.logic.utils.LanguageType;
 import de.deadlocker8.budgetmaster.logic.utils.Strings;
 import de.deadlocker8.budgetmasterclient.ui.RestartHandler;
 import de.deadlocker8.budgetmasterclient.ui.cells.LanguageCell;
+import de.deadlocker8.budgetmasterclient.ui.controller.Controller;
 import javafx.fxml.FXML;
 import javafx.scene.control.Alert.AlertType;
 import javafx.scene.control.Button;
diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SettingsController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/SettingsController.java
similarity index 87%
rename from BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SettingsController.java
rename to BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/SettingsController.java
index 05bedc47da525e437bea018333322e7dfbe05003..43dd3187ea2fa6d1850109c146be462ad70a35bb 100644
--- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SettingsController.java
+++ b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/SettingsController.java
@@ -1,6 +1,7 @@
-package de.deadlocker8.budgetmasterclient.ui.controller;
+package de.deadlocker8.budgetmasterclient.ui.controller.settings;
 
 import de.deadlocker8.budgetmasterclient.ui.Styleable;
+import de.deadlocker8.budgetmasterclient.ui.controller.Controller;
 import de.deadlocker8.budgetmasterclient.utils.DatabaseDeleter;
 import de.deadlocker8.budgetmasterclient.utils.DatabaseExporter;
 import de.deadlocker8.budgetmasterclient.utils.DatabaseImporter;
diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabLocalServer.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabLocalServer.fxml
index 3763df344257f0d45c5725acb8863a8a0e13e0d2..28a4a0e7a7a5cb0fc4b9de214948100cb206da9f 100644
--- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabLocalServer.fxml
+++ b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabLocalServer.fxml
@@ -15,7 +15,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.LocalServerSettingsController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.settings.LocalServerSettingsController">
    <children>
       <VBox alignment="TOP_CENTER" prefHeight="562.0" prefWidth="772.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0">
          <children>
diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabOnlineServer.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabOnlineServer.fxml
index 2c57219825b966e91d2075c3401e718470cbca6a..f2b6eb6f1388ca90c86a5df0c52d55fd10cea628 100644
--- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabOnlineServer.fxml
+++ b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabOnlineServer.fxml
@@ -16,7 +16,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.OnlineServerSettingsController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.settings.OnlineServerSettingsController">
    <children>
       <VBox alignment="TOP_CENTER" prefHeight="562.0" prefWidth="772.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0">
          <children>