← Back to team overview

widelands-dev team mailing list archive

[Merge] lp:~widelands-dev/widelands/logic_directory_layout into lp:widelands

 

GunChleoc has proposed merging lp:~widelands-dev/widelands/logic_directory_layout into lp:widelands.

Requested reviews:
  Widelands Developers (widelands-dev)
Related bugs:
  Bug #1512076 in widelands: "Post one_tribe cleanup"
  https://bugs.launchpad.net/widelands/+bug/1512076

For more details, see:
https://code.launchpad.net/~widelands-dev/widelands/logic_directory_layout/+merge/280354

This is a cleanup branch.

I have changed the directory layout for src/logic: there is now a new subdirectory "map_objects", which then includes the "tribes" and "world". The CMake packages haven't changed because there is a lot of interdependency, but I still think that this will make the code easier to navigate for new coders. And I also renamed instances.h/cc to map_object.h/cc - this file name has always bothered me.
-- 
Your team Widelands Developers is requested to review the proposed merge of lp:~widelands-dev/widelands/logic_directory_layout into lp:widelands.
=== modified file 'src/ai/ai_help_structs.h'
--- src/ai/ai_help_structs.h	2015-12-04 12:55:19 +0000
+++ src/ai/ai_help_structs.h	2015-12-11 20:19:40 +0000
@@ -26,15 +26,16 @@
 #include "ai/ai_hints.h"
 #include "economy/flag.h"
 #include "economy/road.h"
-#include "logic/checkstep.h"
 #include "logic/findnode.h"
 #include "logic/game.h"
-#include "logic/instances.h"
 #include "logic/map.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/world/terrain_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/player.h"
-#include "logic/ship.h"
-#include "logic/world/terrain_description.h"
-#include "logic/world/world.h"
+
 
 namespace Widelands {
 

=== modified file 'src/ai/defaultai.cc'
--- src/ai/defaultai.cc	2015-12-06 19:57:49 +0000
+++ src/ai/defaultai.cc	2015-12-11 20:19:40 +0000
@@ -34,22 +34,22 @@
 #include "economy/portdock.h"
 #include "economy/road.h"
 #include "economy/wares_queue.h"
-#include "logic/constructionsite.h"
 #include "logic/findbob.h"
 #include "logic/findimmovable.h"
 #include "logic/findnode.h"
 #include "logic/map.h"
-#include "logic/militarysite.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/player.h"
 #include "logic/playercommand.h"
-#include "logic/productionsite.h"
-#include "logic/ship.h"
-#include "logic/soldier.h"
-#include "logic/trainingsite.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/tribes/tribes.h"
-#include "logic/warehouse.h"
-#include "logic/world/world.h"
 
 // following is in miliseconds (widelands counts time in ms)
 constexpr int kFieldInfoExpiration = 12 * 1000;

=== modified file 'src/ai/defaultai.h'
--- src/ai/defaultai.h	2015-12-06 12:37:51 +0000
+++ src/ai/defaultai.h	2015-12-11 20:19:40 +0000
@@ -28,10 +28,10 @@
 #include "ai/ai_help_structs.h"
 #include "ai/computer_player.h"
 #include "base/i18n.h"
-#include "logic/immovable.h"
-#include "logic/ship.h"
-#include "logic/soldier.h"
-#include "logic/trainingsite.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/trainingsite.h"
 
 namespace Widelands {
 struct Road;

=== modified file 'src/economy/CMakeLists.txt'
--- src/economy/CMakeLists.txt	2014-11-28 16:40:55 +0000
+++ src/economy/CMakeLists.txt	2015-12-11 20:19:40 +0000
@@ -6,6 +6,8 @@
     economy.h
     economy_data_packet.cc
     economy_data_packet.h
+    expedition_bootstrap.cc
+    expedition_bootstrap.h
     flag.cc
     flag.h
     fleet.cc

=== modified file 'src/economy/cmd_call_economy_balance.h'
--- src/economy/cmd_call_economy_balance.h	2015-11-27 12:46:45 +0000
+++ src/economy/cmd_call_economy_balance.h	2015-12-11 20:19:40 +0000
@@ -22,7 +22,7 @@
 
 #include "economy/flag.h"
 #include "logic/cmd_queue.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 
 namespace Widelands {
 class Economy;

=== modified file 'src/economy/economy.cc'
--- src/economy/economy.cc	2015-11-11 09:52:55 +0000
+++ src/economy/economy.cc	2015-12-11 20:19:40 +0000
@@ -33,10 +33,10 @@
 #include "economy/router.h"
 #include "economy/warehousesupply.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
 
 namespace Widelands {
 

=== modified file 'src/economy/economy.h'
--- src/economy/economy.h	2015-11-11 09:52:55 +0000
+++ src/economy/economy.h	2015-12-11 20:19:40 +0000
@@ -28,9 +28,9 @@
 #include <boost/utility.hpp>
 
 #include "base/macros.h"
-#include "logic/instances.h"
-#include "logic/warelist.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/warelist.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "economy/supply_list.h"
 #include "ui_basic/unique_window.h"
 

=== modified file 'src/economy/economy_data_packet.cc'
--- src/economy/economy_data_packet.cc	2015-11-11 09:52:55 +0000
+++ src/economy/economy_data_packet.cc	2015-12-11 20:19:40 +0000
@@ -22,8 +22,8 @@
 #include "economy/economy.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== renamed file 'src/logic/expedition_bootstrap.cc' => 'src/economy/expedition_bootstrap.cc'
--- src/logic/expedition_bootstrap.cc	2015-11-11 09:52:55 +0000
+++ src/economy/expedition_bootstrap.cc	2015-12-11 20:19:40 +0000
@@ -17,15 +17,15 @@
  *
  */
 
-#include "logic/expedition_bootstrap.h"
+#include "economy/expedition_bootstrap.h"
 
 #include <memory>
 
 #include "base/macros.h"
 #include "economy/portdock.h"
 #include "io/filewrite.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/player.h"
-#include "logic/warehouse.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 #include "wui/interactive_gamebase.h"

=== renamed file 'src/logic/expedition_bootstrap.h' => 'src/economy/expedition_bootstrap.h'
--- src/logic/expedition_bootstrap.h	2015-11-11 09:52:55 +0000
+++ src/economy/expedition_bootstrap.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_EXPEDITION_BOOTSTRAP_H
-#define WL_LOGIC_EXPEDITION_BOOTSTRAP_H
+#ifndef WL_ECONOMY_EXPEDITION_BOOTSTRAP_H
+#define WL_ECONOMY_EXPEDITION_BOOTSTRAP_H
 
 #include <vector>
 #include <memory>
@@ -101,4 +101,4 @@
 
 }  // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_EXPEDITION_BOOTSTRAP_H
+#endif  // end of include guard: WL_ECONOMY_EXPEDITION_BOOTSTRAP_H

=== modified file 'src/economy/flag.cc'
--- src/economy/flag.cc	2015-11-11 09:52:55 +0000
+++ src/economy/flag.cc	2015-12-11 20:19:40 +0000
@@ -26,14 +26,14 @@
 #include "economy/request.h"
 #include "economy/road.h"
 #include "economy/ware_instance.h"
-#include "logic/building.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
-#include "logic/worker.h"
 
 namespace Widelands {
 

=== modified file 'src/economy/flag.h'
--- src/economy/flag.h	2015-11-11 09:52:55 +0000
+++ src/economy/flag.h	2015-12-11 20:19:40 +0000
@@ -24,7 +24,7 @@
 #include <vector>
 
 #include "base/macros.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/immovable.h"
 #include "economy/routing_node.h"
 
 namespace Widelands {

=== modified file 'src/economy/fleet.cc'
--- src/economy/fleet.cc	2015-11-03 10:39:08 +0000
+++ src/economy/fleet.cc	2015-12-11 20:19:40 +0000
@@ -29,11 +29,11 @@
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/mapastar.h"
 #include "logic/path.h"
 #include "logic/player.h"
-#include "logic/ship.h"
-#include "logic/warehouse.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== modified file 'src/economy/fleet.h'
--- src/economy/fleet.h	2015-10-04 18:30:05 +0000
+++ src/economy/fleet.h	2015-12-11 20:19:40 +0000
@@ -23,7 +23,7 @@
 #include <boost/shared_ptr.hpp>
 
 #include "base/macros.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/widelands_geometry.h"
 
 namespace Widelands {

=== modified file 'src/economy/idleworkersupply.cc'
--- src/economy/idleworkersupply.cc	2015-11-11 09:52:55 +0000
+++ src/economy/idleworkersupply.cc	2015-12-11 20:19:40 +0000
@@ -23,12 +23,12 @@
 #include "economy/economy.h"
 #include "economy/request.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/requirements.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/requirements.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
-#include "logic/worker.h"
 
 namespace Widelands {
 

=== modified file 'src/economy/portdock.cc'
--- src/economy/portdock.cc	2015-11-11 09:52:55 +0000
+++ src/economy/portdock.cc	2015-12-11 20:19:40 +0000
@@ -25,16 +25,16 @@
 
 #include "base/log.h"
 #include "base/macros.h"
+#include "economy/expedition_bootstrap.h"
 #include "economy/fleet.h"
 #include "economy/ware_instance.h"
 #include "economy/wares_queue.h"
 #include "io/filewrite.h"
-#include "logic/expedition_bootstrap.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/player.h"
-#include "logic/ship.h"
-#include "logic/warehouse.h"
 #include "logic/widelands_geometry_io.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"

=== modified file 'src/economy/portdock.h'
--- src/economy/portdock.h	2015-11-11 09:52:55 +0000
+++ src/economy/portdock.h	2015-12-11 20:19:40 +0000
@@ -23,8 +23,8 @@
 #include <memory>
 
 #include "base/macros.h"
-#include "logic/immovable.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "economy/shippingitem.h"
 
 namespace Widelands {

=== modified file 'src/economy/request.cc'
--- src/economy/request.cc	2015-11-14 15:58:29 +0000
+++ src/economy/request.cc	2015-12-11 20:19:40 +0000
@@ -26,14 +26,14 @@
 #include "economy/ware_instance.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/constructionsite.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/productionsite.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
-#include "logic/worker.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== modified file 'src/economy/request.h'
--- src/economy/request.h	2015-11-11 09:52:55 +0000
+++ src/economy/request.h	2015-12-11 20:19:40 +0000
@@ -21,8 +21,8 @@
 #define WL_ECONOMY_REQUEST_H
 
 #include "economy/trackptr.h"
-#include "logic/requirements.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/tribes/requirements.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "logic/widelands.h"
 
 class FileRead;

=== modified file 'src/economy/road.cc'
--- src/economy/road.cc	2015-11-11 09:52:55 +0000
+++ src/economy/road.cc	2015-12-11 20:19:40 +0000
@@ -23,12 +23,12 @@
 #include "economy/economy.h"
 #include "economy/flag.h"
 #include "economy/request.h"
-#include "logic/carrier.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 
 namespace Widelands {
 

=== modified file 'src/economy/road.h'
--- src/economy/road.h	2015-11-11 09:52:55 +0000
+++ src/economy/road.h	2015-12-11 20:19:40 +0000
@@ -23,7 +23,7 @@
 #include <vector>
 
 #include "base/macros.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/immovable.h"
 #include "logic/path.h"
 #include "logic/roadtype.h"
 

=== modified file 'src/economy/route.h'
--- src/economy/route.h	2014-09-19 12:54:54 +0000
+++ src/economy/route.h	2015-12-11 20:19:40 +0000
@@ -23,7 +23,7 @@
 #include <vector>
 
 #include "economy/iroute.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 
 
 namespace Widelands {

=== modified file 'src/economy/router.h'
--- src/economy/router.h	2014-09-14 11:31:58 +0000
+++ src/economy/router.h	2015-12-11 20:19:40 +0000
@@ -24,7 +24,7 @@
 #include <boost/function.hpp>
 #include <stdint.h>
 
-#include "logic/wareworker.h"
+#include "logic/map_objects/tribes/wareworker.h"
 
 namespace Widelands {
 class ITransportCostCalculator;

=== modified file 'src/economy/routing_node.h'
--- src/economy/routing_node.h	2014-09-14 14:36:56 +0000
+++ src/economy/routing_node.h	2015-12-11 20:19:40 +0000
@@ -23,7 +23,7 @@
 #include <vector>
 
 #include "logic/cookie_priority_queue.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "logic/widelands_geometry.h"
 
 namespace Widelands {

=== modified file 'src/economy/shippingitem.cc'
--- src/economy/shippingitem.cc	2015-10-24 15:42:37 +0000
+++ src/economy/shippingitem.cc	2015-12-11 20:19:40 +0000
@@ -24,7 +24,7 @@
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game_data_error.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== modified file 'src/economy/shippingitem.h'
--- src/economy/shippingitem.h	2014-09-10 10:18:46 +0000
+++ src/economy/shippingitem.h	2015-12-11 20:19:40 +0000
@@ -21,7 +21,7 @@
 #define WL_ECONOMY_SHIPPINGITEM_H
 
 #include "logic/game.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 
 class FileRead;
 class FileWrite;

=== modified file 'src/economy/supply.h'
--- src/economy/supply.h	2015-11-11 09:52:55 +0000
+++ src/economy/supply.h	2015-12-11 20:19:40 +0000
@@ -21,7 +21,7 @@
 #define WL_ECONOMY_SUPPLY_H
 
 #include "economy/trackptr.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "logic/widelands.h"
 
 namespace Widelands {

=== modified file 'src/economy/test/test_road.cc'
--- src/economy/test/test_road.cc	2015-10-19 23:50:07 +0000
+++ src/economy/test/test_road.cc	2015-12-11 20:19:40 +0000
@@ -25,7 +25,7 @@
 #include "economy/road.h"
 #include "io/filesystem/layered_filesystem.h"
 #include "logic/editor_game_base.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/player.h"
 
 namespace Widelands {

=== modified file 'src/economy/test/test_routing.cc'
--- src/economy/test/test_routing.cc	2014-11-28 16:40:55 +0000
+++ src/economy/test/test_routing.cc	2015-12-11 20:19:40 +0000
@@ -27,7 +27,7 @@
 #include "economy/itransport_cost_calculator.h"
 #include "economy/router.h"
 #include "economy/routing_node.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "logic/widelands_geometry.h"
 
 using namespace Widelands;

=== modified file 'src/economy/transfer.cc'
--- src/economy/transfer.cc	2015-10-24 15:42:37 +0000
+++ src/economy/transfer.cc	2015-12-11 20:19:40 +0000
@@ -29,10 +29,10 @@
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/warehouse.h"
-#include "logic/worker.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== modified file 'src/economy/ware_instance.cc'
--- src/economy/ware_instance.cc	2015-11-11 09:52:55 +0000
+++ src/economy/ware_instance.cc	2015-12-11 20:19:40 +0000
@@ -32,10 +32,10 @@
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game.h"
-#include "logic/ship.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== modified file 'src/economy/ware_instance.h'
--- src/economy/ware_instance.h	2015-11-11 09:52:55 +0000
+++ src/economy/ware_instance.h	2015-12-11 20:19:40 +0000
@@ -21,8 +21,8 @@
 #define WL_ECONOMY_WARE_INSTANCE_H
 
 #include "economy/transfer.h"
-#include "logic/instances.h"
-#include "logic/ware_descr.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/ware_descr.h"
 #include "logic/widelands.h"
 #include "map_io/tribes_legacy_lookup_table.h"
 

=== modified file 'src/economy/warehousesupply.h'
--- src/economy/warehousesupply.h	2015-11-11 09:52:55 +0000
+++ src/economy/warehousesupply.h	2015-12-11 20:19:40 +0000
@@ -20,8 +20,8 @@
 #ifndef WL_ECONOMY_WAREHOUSESUPPLY_H
 #define WL_ECONOMY_WAREHOUSESUPPLY_H
 
-#include "logic/warelist.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/tribes/warelist.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "economy/supply.h"
 
 namespace Widelands {

=== modified file 'src/economy/wares_queue.cc'
--- src/economy/wares_queue.cc	2015-11-11 09:52:55 +0000
+++ src/economy/wares_queue.cc	2015-12-11 20:19:40 +0000
@@ -26,8 +26,8 @@
 #include "io/filewrite.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== modified file 'src/economy/wares_queue.h'
--- src/economy/wares_queue.h	2015-11-11 09:52:55 +0000
+++ src/economy/wares_queue.h	2015-12-11 20:19:40 +0000
@@ -20,7 +20,7 @@
 #ifndef WL_ECONOMY_WARES_QUEUE_H
 #define WL_ECONOMY_WARES_QUEUE_H
 
-#include "logic/immovable.h"
+#include "logic/map_objects/immovable.h"
 #include "logic/widelands.h"
 
 namespace Widelands {

=== modified file 'src/editor/editorinteractive.cc'
--- src/editor/editorinteractive.cc	2015-11-08 17:31:06 +0000
+++ src/editor/editorinteractive.cc	2015-12-11 20:19:40 +0000
@@ -38,10 +38,10 @@
 #include "editor/ui_menus/editor_toolsize_menu.h"
 #include "graphic/graphic.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/player.h"
-#include "logic/tribes/tribes.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/world.h"
 #include "map_io/widelands_map_loader.h"
 #include "scripting/lua_interface.h"
 #include "scripting/lua_table.h"

=== modified file 'src/editor/map_generator.cc'
--- src/editor/map_generator.cc	2015-11-11 09:56:22 +0000
+++ src/editor/map_generator.cc	2015-12-11 20:19:40 +0000
@@ -27,8 +27,8 @@
 #include "logic/editor_game_base.h"
 #include "logic/findnode.h"
 #include "logic/map.h"
-#include "logic/world/map_gen.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/map_gen.h"
+#include "logic/map_objects/world/world.h"
 #include "scripting/lua_interface.h"
 #include "scripting/lua_table.h"
 

=== modified file 'src/editor/map_generator.h'
--- src/editor/map_generator.h	2015-11-11 09:54:53 +0000
+++ src/editor/map_generator.h	2015-12-11 20:19:40 +0000
@@ -23,7 +23,7 @@
 #include <memory>
 
 #include "logic/widelands_geometry.h"
-#include "logic/world/map_gen.h"
+#include "logic/map_objects/world/map_gen.h"
 
 struct RNG;
 

=== modified file 'src/editor/tools/editor_decrease_resources_tool.cc'
--- src/editor/tools/editor_decrease_resources_tool.cc	2015-03-01 09:21:20 +0000
+++ src/editor/tools/editor_decrease_resources_tool.cc	2015-12-11 20:19:40 +0000
@@ -24,10 +24,10 @@
 #include "editor/tools/editor_set_resources_tool.h"
 #include "graphic/graphic.h"
 #include "logic/field.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapregion.h"
 #include "logic/widelands_geometry.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/world.h"
 #include "wui/overlay_manager.h"
 
 

=== modified file 'src/editor/tools/editor_delete_bob_tool.cc'
--- src/editor/tools/editor_delete_bob_tool.cc	2014-09-10 14:08:25 +0000
+++ src/editor/tools/editor_delete_bob_tool.cc	2015-12-11 20:19:40 +0000
@@ -20,8 +20,8 @@
 #include "editor/tools/editor_delete_bob_tool.h"
 
 #include "editor/editorinteractive.h"
-#include "logic/bob.h"
 #include "logic/field.h"
+#include "logic/map_objects/bob.h"
 #include "logic/mapregion.h"
 
 /**

=== modified file 'src/editor/tools/editor_delete_immovable_tool.cc'
--- src/editor/tools/editor_delete_immovable_tool.cc	2014-09-10 14:08:25 +0000
+++ src/editor/tools/editor_delete_immovable_tool.cc	2015-12-11 20:19:40 +0000
@@ -22,7 +22,7 @@
 #include "base/macros.h"
 #include "editor/editorinteractive.h"
 #include "logic/field.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/immovable.h"
 #include "logic/mapregion.h"
 
 /**

=== modified file 'src/editor/tools/editor_increase_resources_tool.cc'
--- src/editor/tools/editor_increase_resources_tool.cc	2015-12-05 10:59:02 +0000
+++ src/editor/tools/editor_increase_resources_tool.cc	2015-12-11 20:19:40 +0000
@@ -22,10 +22,10 @@
 #include "editor/editorinteractive.h"
 #include "graphic/graphic.h"
 #include "logic/field.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/terrain_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapregion.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/terrain_description.h"
-#include "logic/world/world.h"
 #include "wui/overlay_manager.h"
 
 using Widelands::TCoords;

=== modified file 'src/editor/tools/editor_info_tool.cc'
--- src/editor/tools/editor_info_tool.cc	2015-12-05 10:59:02 +0000
+++ src/editor/tools/editor_info_tool.cc	2015-12-11 20:19:40 +0000
@@ -27,9 +27,9 @@
 #include "base/i18n.h"
 #include "editor/editorinteractive.h"
 #include "logic/map.h"
-#include "logic/world/editor_category.h"
-#include "logic/world/terrain_description.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/editor_category.h"
+#include "logic/map_objects/world/terrain_description.h"
+#include "logic/map_objects/world/world.h"
 #include "ui_basic/multilinetextarea.h"
 #include "ui_basic/window.h"
 

=== modified file 'src/editor/tools/editor_place_bob_tool.cc'
--- src/editor/tools/editor_place_bob_tool.cc	2014-09-10 14:08:25 +0000
+++ src/editor/tools/editor_place_bob_tool.cc	2015-12-11 20:19:40 +0000
@@ -20,11 +20,11 @@
 #include "editor/tools/editor_place_bob_tool.h"
 
 #include "editor/editorinteractive.h"
-#include "logic/bob.h"
 #include "logic/editor_game_base.h"
 #include "logic/field.h"
+#include "logic/map_objects/bob.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapregion.h"
-#include "logic/world/world.h"
 
 /**
  * Choses an object to place randomly from all enabled

=== modified file 'src/editor/tools/editor_place_immovable_tool.cc'
--- src/editor/tools/editor_place_immovable_tool.cc	2015-01-25 12:02:06 +0000
+++ src/editor/tools/editor_place_immovable_tool.cc	2015-12-11 20:19:40 +0000
@@ -25,7 +25,7 @@
 #include "editor/editorinteractive.h"
 #include "logic/editor_game_base.h"
 #include "logic/field.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/immovable.h"
 #include "logic/mapregion.h"
 
 /**

=== modified file 'src/editor/tools/editor_set_port_space_tool.cc'
--- src/editor/tools/editor_set_port_space_tool.cc	2014-09-20 09:37:47 +0000
+++ src/editor/tools/editor_set_port_space_tool.cc	2015-12-11 20:19:40 +0000
@@ -21,8 +21,8 @@
 
 #include "editor/editorinteractive.h"
 #include "editor/tools/editor_tool.h"
-#include "logic/building.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/building.h"
 #include "logic/mapfringeregion.h"
 #include "logic/mapregion.h"
 #include "wui/overlay_manager.h"

=== modified file 'src/editor/tools/editor_set_resources_tool.cc'
--- src/editor/tools/editor_set_resources_tool.cc	2014-12-01 21:47:22 +0000
+++ src/editor/tools/editor_set_resources_tool.cc	2015-12-11 20:19:40 +0000
@@ -24,9 +24,9 @@
 #include "editor/tools/editor_increase_resources_tool.h"
 #include "graphic/graphic.h"
 #include "logic/field.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapregion.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/world.h"
 #include "wui/overlay_manager.h"
 
 /**

=== modified file 'src/editor/tools/editor_set_starting_pos_tool.cc'
--- src/editor/tools/editor_set_starting_pos_tool.cc	2014-09-20 09:37:47 +0000
+++ src/editor/tools/editor_set_starting_pos_tool.cc	2015-12-11 20:19:40 +0000
@@ -22,8 +22,8 @@
 #include "editor/editorinteractive.h"
 #include "editor/tools/editor_tool.h"
 #include "graphic/graphic.h"
-#include "logic/building.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/building.h"
 #include "wui/overlay_manager.h"
 
 // global variable to pass data from callback to class

=== modified file 'src/editor/ui_menus/categorized_item_selection_menu.h'
--- src/editor/ui_menus/categorized_item_selection_menu.h	2015-10-31 15:13:00 +0000
+++ src/editor/ui_menus/categorized_item_selection_menu.h	2015-12-11 20:19:40 +0000
@@ -26,7 +26,7 @@
 #include "base/i18n.h"
 #include "graphic/image.h"
 #include "logic/description_maintainer.h"
-#include "logic/world/editor_category.h"
+#include "logic/map_objects/world/editor_category.h"
 #include "ui_basic/box.h"
 #include "ui_basic/checkbox.h"
 #include "ui_basic/panel.h"

=== modified file 'src/editor/ui_menus/editor_main_menu_new_map.cc'
--- src/editor/ui_menus/editor_main_menu_new_map.cc	2015-11-03 18:52:00 +0000
+++ src/editor/ui_menus/editor_main_menu_new_map.cc	2015-12-11 20:19:40 +0000
@@ -31,7 +31,7 @@
 #include "graphic/graphic.h"
 #include "logic/editor_game_base.h"
 #include "logic/map.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/world.h"
 #include "ui_basic/button.h"
 #include "ui_basic/progresswindow.h"
 #include "ui_basic/textarea.h"

=== modified file 'src/editor/ui_menus/editor_main_menu_random_map.cc'
--- src/editor/ui_menus/editor_main_menu_random_map.cc	2015-11-03 18:52:00 +0000
+++ src/editor/ui_menus/editor_main_menu_random_map.cc	2015-12-11 20:19:40 +0000
@@ -33,7 +33,7 @@
 #include "logic/constants.h"
 #include "logic/editor_game_base.h"
 #include "logic/map.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/world.h"
 #include "random/random.h"
 #include "ui_basic/button.h"
 #include "ui_basic/progresswindow.h"

=== modified file 'src/editor/ui_menus/editor_player_menu.cc'
--- src/editor/ui_menus/editor_player_menu.cc	2015-11-11 09:53:54 +0000
+++ src/editor/ui_menus/editor_player_menu.cc	2015-12-11 20:19:40 +0000
@@ -28,9 +28,9 @@
 #include "graphic/graphic.h"
 #include "logic/constants.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/player.h"
-#include "logic/tribes/tribes.h"
-#include "logic/warehouse.h"
 #include "ui_basic/editbox.h"
 #include "ui_basic/messagebox.h"
 #include "ui_basic/textarea.h"

=== modified file 'src/editor/ui_menus/editor_tool_change_resources_options_menu.cc'
--- src/editor/ui_menus/editor_tool_change_resources_options_menu.cc	2015-11-11 09:56:22 +0000
+++ src/editor/ui_menus/editor_tool_change_resources_options_menu.cc	2015-12-11 20:19:40 +0000
@@ -28,9 +28,9 @@
 #include "editor/tools/editor_set_resources_tool.h"
 #include "graphic/graphic.h"
 #include "logic/map.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/widelands.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/world.h"
 #include "ui_basic/button.h"
 #include "wui/overlay_manager.h"
 

=== modified file 'src/editor/ui_menus/editor_tool_place_bob_options_menu.cc'
--- src/editor/ui_menus/editor_tool_place_bob_options_menu.cc	2015-10-23 16:32:05 +0000
+++ src/editor/ui_menus/editor_tool_place_bob_options_menu.cc	2015-12-11 20:19:40 +0000
@@ -26,9 +26,9 @@
 #include "editor/editorinteractive.h"
 #include "editor/tools/editor_place_bob_tool.h"
 #include "graphic/graphic.h"
-#include "logic/critter.h"
 #include "logic/map.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/critter.h"
+#include "logic/map_objects/world/world.h"
 #include "ui_basic/box.h"
 #include "ui_basic/button.h"
 #include "ui_basic/checkbox.h"

=== modified file 'src/editor/ui_menus/editor_tool_place_immovable_options_menu.cc'
--- src/editor/ui_menus/editor_tool_place_immovable_options_menu.cc	2015-10-23 16:32:05 +0000
+++ src/editor/ui_menus/editor_tool_place_immovable_options_menu.cc	2015-12-11 20:19:40 +0000
@@ -26,7 +26,7 @@
 #include "editor/tools/editor_place_immovable_tool.h"
 #include "graphic/graphic.h"
 #include "logic/map.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/world.h"
 #include "ui_basic/box.h"
 #include "ui_basic/button.h"
 #include "ui_basic/checkbox.h"

=== modified file 'src/editor/ui_menus/editor_tool_set_terrain_options_menu.cc'
--- src/editor/ui_menus/editor_tool_set_terrain_options_menu.cc	2015-12-10 20:52:30 +0000
+++ src/editor/ui_menus/editor_tool_set_terrain_options_menu.cc	2015-12-11 20:19:40 +0000
@@ -31,9 +31,9 @@
 #include "graphic/rendertarget.h"
 #include "graphic/texture.h"
 #include "logic/map.h"
-#include "logic/world/editor_category.h"
-#include "logic/world/terrain_description.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/editor_category.h"
+#include "logic/map_objects/world/terrain_description.h"
+#include "logic/map_objects/world/world.h"
 #include "ui_basic/checkbox.h"
 #include "ui_basic/panel.h"
 #include "ui_basic/tabpanel.h"

=== modified file 'src/editor/ui_menus/editor_tool_set_terrain_options_menu.h'
--- src/editor/ui_menus/editor_tool_set_terrain_options_menu.h	2014-09-10 14:08:25 +0000
+++ src/editor/ui_menus/editor_tool_set_terrain_options_menu.h	2015-12-11 20:19:40 +0000
@@ -26,7 +26,7 @@
 
 #include "editor/ui_menus/categorized_item_selection_menu.h"
 #include "editor/ui_menus/editor_tool_options_menu.h"
-#include "logic/world/terrain_description.h"
+#include "logic/map_objects/world/terrain_description.h"
 #include "ui_basic/textarea.h"
 
 struct EditorInteractive;

=== modified file 'src/game_io/game_interactive_player_packet.cc'
--- src/game_io/game_interactive_player_packet.cc	2015-10-25 08:06:00 +0000
+++ src/game_io/game_interactive_player_packet.cc	2015-12-11 20:19:40 +0000
@@ -23,8 +23,8 @@
 #include "io/filewrite.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "wui/interactive_player.h"
 #include "wui/mapview.h"
 #include "wui/overlay_manager.h"

=== modified file 'src/game_io/game_player_economies_packet.cc'
--- src/game_io/game_player_economies_packet.cc	2015-10-24 15:42:37 +0000
+++ src/game_io/game_player_economies_packet.cc	2015-12-11 20:19:40 +0000
@@ -26,8 +26,8 @@
 #include "io/filewrite.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/tribes/ship.h"
 #include "logic/player.h"
-#include "logic/ship.h"
 #include "logic/widelands_geometry_io.h"
 
 namespace Widelands {

=== modified file 'src/game_io/game_player_info_packet.cc'
--- src/game_io/game_player_info_packet.cc	2015-10-25 09:53:21 +0000
+++ src/game_io/game_player_info_packet.cc	2015-12-11 20:19:40 +0000
@@ -24,8 +24,8 @@
 #include "logic/constants.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "wui/interactive_player.h"
 
 namespace Widelands {

=== modified file 'src/graphic/animation.cc'
--- src/graphic/animation.cc	2015-11-28 14:19:26 +0000
+++ src/graphic/animation.cc	2015-12-11 20:19:40 +0000
@@ -41,8 +41,8 @@
 #include "graphic/surface.h"
 #include "graphic/texture.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "logic/bob.h"
-#include "logic/instances.h"
+#include "logic/map_objects/bob.h"
+#include "logic/map_objects/map_object.h"
 #include "scripting/lua_table.h"
 #include "sound/sound_handler.h"
 

=== modified file 'src/graphic/game_renderer.cc'
--- src/graphic/game_renderer.cc	2015-02-23 08:54:16 +0000
+++ src/graphic/game_renderer.cc	2015-12-11 20:19:40 +0000
@@ -29,8 +29,8 @@
 #include "graphic/rendertarget.h"
 #include "graphic/surface.h"
 #include "logic/editor_game_base.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/player.h"
-#include "logic/world/world.h"
 #include "wui/mapviewpixelconstants.h"
 #include "wui/mapviewpixelfunctions.h"
 #include "wui/overlay_manager.h"

=== modified file 'src/graphic/gl/dither_program.h'
--- src/graphic/gl/dither_program.h	2015-03-01 09:21:20 +0000
+++ src/graphic/gl/dither_program.h	2015-12-11 20:19:40 +0000
@@ -26,7 +26,7 @@
 #include "graphic/gl/fields_to_draw.h"
 #include "graphic/gl/utils.h"
 #include "logic/description_maintainer.h"
-#include "logic/world/terrain_description.h"
+#include "logic/map_objects/world/terrain_description.h"
 
 class Texture;
 

=== modified file 'src/graphic/gl/fields_to_draw.h'
--- src/graphic/gl/fields_to_draw.h	2015-03-01 09:21:20 +0000
+++ src/graphic/gl/fields_to_draw.h	2015-12-11 20:19:40 +0000
@@ -26,7 +26,7 @@
 
 #include <stdint.h>
 
-#include "logic/road_textures.h"
+#include "logic/map_objects/tribes/road_textures.h"
 
 // Helper struct that contains the data needed for drawing all fields. All
 // methods are inlined for performance reasons.

=== modified file 'src/graphic/gl/terrain_program.h'
--- src/graphic/gl/terrain_program.h	2015-03-01 09:21:20 +0000
+++ src/graphic/gl/terrain_program.h	2015-12-11 20:19:40 +0000
@@ -26,7 +26,7 @@
 #include "graphic/gl/fields_to_draw.h"
 #include "graphic/gl/utils.h"
 #include "logic/description_maintainer.h"
-#include "logic/world/terrain_description.h"
+#include "logic/map_objects/world/terrain_description.h"
 
 
 class TerrainProgram {

=== modified file 'src/graphic/minimap_renderer.cc'
--- src/graphic/minimap_renderer.cc	2014-12-07 21:34:11 +0000
+++ src/graphic/minimap_renderer.cc	2015-12-11 20:19:40 +0000
@@ -28,9 +28,9 @@
 #include "graphic/texture.h"
 #include "logic/field.h"
 #include "logic/map.h"
+#include "logic/map_objects/world/terrain_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/player.h"
-#include "logic/world/terrain_description.h"
-#include "logic/world/world.h"
 #include "wui/mapviewpixelconstants.h"
 #include "wui/mapviewpixelfunctions.h"
 

=== modified file 'src/graphic/rendertarget.cc'
--- src/graphic/rendertarget.cc	2015-09-12 07:53:38 +0000
+++ src/graphic/rendertarget.cc	2015-12-11 20:19:40 +0000
@@ -24,8 +24,8 @@
 #include "graphic/animation.h"
 #include "graphic/graphic.h"
 #include "graphic/surface.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "wui/overlay_manager.h"
 
 using Widelands::BaseImmovable;

=== modified file 'src/logic/CMakeLists.txt'
--- src/logic/CMakeLists.txt	2015-11-01 10:11:56 +0000
+++ src/logic/CMakeLists.txt	2015-12-11 20:19:40 +0000
@@ -61,22 +61,8 @@
 
 wl_library(logic
   SRCS
-    attackable.h
     backtrace.cc
     backtrace.h
-    battle.cc
-    battle.h
-    bill_of_materials.h
-    bob.cc
-    bob.h
-    buildcost.cc
-    buildcost.h
-    building.cc
-    building.h
-    carrier.cc
-    carrier.h
-    checkstep.cc
-    checkstep.h
     cmd_calculate_statistics.cc
     cmd_calculate_statistics.h
     cmd_delete_message.cc
@@ -90,19 +76,10 @@
     cmd_queue.cc
     cmd_queue.h
     constants.h
-    constructionsite.cc
-    constructionsite.h
     cookie_priority_queue.h
-	 critter.cc
-	 critter.h
-	 critter_program.h
     description_maintainer.h
-    dismantlesite.cc
-    dismantlesite.h
     editor_game_base.cc
     editor_game_base.h
-    expedition_bootstrap.cc
-    expedition_bootstrap.h
     field.cc
     field.h
     findbob.cc
@@ -111,21 +88,14 @@
     findimmovable.h
     findnode.cc
     findnode.h
+    game_data_error.cc
+    game_data_error.h
     game.cc
     game.h
-    game_data_error.cc
-    game_data_error.h
-    immovable.cc
-    immovable.h
-    immovable_program.h
-    terrain_affinity.cc
-    terrain_affinity.h
-    instances.cc
-    instances.h
+    map_revision.cc
+    map_revision.h
     map.cc
     map.h
-    map_revision.cc
-    map_revision.h
     mapastar.cc
     mapastar.h
     mapdifferenceregion.cc
@@ -137,87 +107,114 @@
     mapregion.h
     maptriangleregion.cc
     maptriangleregion.h
-    message.h
     message_id.h
     message_queue.h
-    militarysite.cc
-    militarysite.h
+    message.h
     nodecaps.h
     objective.h
-    partially_finished_building.cc
-    partially_finished_building.h
     path.cc
     path.h
     pathfield.cc
     pathfield.h
+    player_area.h
     player.cc
     player.h
-    player_area.h
     playercommand.cc
     playercommand.h
     playersmanager.cc
     playersmanager.h
-    production_program.cc
-    production_program.h
-    productionsite.cc
-    productionsite.h
-    program_result.h
     queue_cmd_factory.cc
     queue_cmd_factory.h
     queue_cmd_ids.h
     replay.cc
     replay.h
-    requirements.cc
-    requirements.h
-    road_textures.cc
-    road_textures.h
     roadtype.h
     save_handler.cc
     save_handler.h
-    ship.cc
-    ship.h
-    soldier.cc
-    soldier.h
-    soldier_counts.h
-    soldiercontrol.h
-    training_attribute.h
-    trainingsite.cc
-    trainingsite.h
-    tribes/tribe_basic_info.h
-    tribes/tribe_basic_info.cc
-    tribes/tribe_descr.cc
-    tribes/tribe_descr.h
-    tribes/tribes.h
-    tribes/tribes.cc
-    walkingdir.cc
-    walkingdir.h
-    ware_descr.cc
-    ware_descr.h
-    warehouse.cc
-    warehouse.h
-    warelist.cc
-    warelist.h
-    wareworker.h
-    widelands.h
     widelands_geometry_io.cc
     widelands_geometry_io.h
-    workarea_info.h
-    worker.cc
-    worker.h
-    worker_descr.cc
-    worker_descr.h
-    worker_program.cc
-    worker_program.h
-    world/editor_category.cc
-    world/editor_category.h
-    world/map_gen.cc
-    world/map_gen.h
-    world/resource_description.cc
-    world/resource_description.h
-    world/terrain_description.cc
-    world/terrain_description.h
-    world/world.cc
-    world/world.h
+    widelands.h
+    map_objects/attackable.h
+    map_objects/bob.cc
+    map_objects/bob.h
+    map_objects/buildcost.cc
+    map_objects/buildcost.h
+    map_objects/checkstep.cc
+    map_objects/checkstep.h
+    map_objects/immovable_program.h
+    map_objects/immovable.cc
+    map_objects/immovable.h
+    map_objects/map_object.cc
+    map_objects/map_object.h
+    map_objects/terrain_affinity.cc
+    map_objects/terrain_affinity.h
+    map_objects/walkingdir.cc
+    map_objects/walkingdir.h
+    map_objects/tribes/battle.cc
+    map_objects/tribes/battle.h
+    map_objects/tribes/bill_of_materials.h
+    map_objects/tribes/building.cc
+    map_objects/tribes/building.h
+    map_objects/tribes/carrier.cc
+    map_objects/tribes/carrier.h
+    map_objects/tribes/constructionsite.cc
+    map_objects/tribes/constructionsite.h
+    map_objects/tribes/dismantlesite.cc
+    map_objects/tribes/dismantlesite.h
+    map_objects/tribes/militarysite.cc
+    map_objects/tribes/militarysite.h
+    map_objects/tribes/partially_finished_building.cc
+    map_objects/tribes/partially_finished_building.h
+    map_objects/tribes/production_program.cc
+    map_objects/tribes/production_program.h
+    map_objects/tribes/productionsite.cc
+    map_objects/tribes/productionsite.h
+    map_objects/tribes/program_result.h
+    map_objects/tribes/requirements.cc
+    map_objects/tribes/requirements.h
+    map_objects/tribes/road_textures.cc
+    map_objects/tribes/road_textures.h
+    map_objects/tribes/ship.cc
+    map_objects/tribes/ship.h
+    map_objects/tribes/soldier.cc
+    map_objects/tribes/soldier.h
+    map_objects/tribes/soldiercontrol.h
+    map_objects/tribes/training_attribute.h
+    map_objects/tribes/trainingsite.cc
+    map_objects/tribes/trainingsite.h
+    map_objects/tribes/tribe_basic_info.cc
+    map_objects/tribes/tribe_basic_info.h
+    map_objects/tribes/tribe_descr.cc
+    map_objects/tribes/tribe_descr.h
+    map_objects/tribes/tribes.cc
+    map_objects/tribes/tribes.h
+    map_objects/tribes/ware_descr.cc
+    map_objects/tribes/ware_descr.h
+    map_objects/tribes/warehouse.cc
+    map_objects/tribes/warehouse.h
+    map_objects/tribes/warelist.cc
+    map_objects/tribes/warelist.h
+    map_objects/tribes/wareworker.h
+    map_objects/tribes/workarea_info.h
+    map_objects/tribes/worker_descr.cc
+    map_objects/tribes/worker_descr.h
+    map_objects/tribes/worker_program.cc
+    map_objects/tribes/worker_program.h
+    map_objects/tribes/worker.cc
+    map_objects/tribes/worker.h
+    map_objects/world/critter_program.h
+    map_objects/world/critter.cc
+    map_objects/world/critter.h
+    map_objects/world/editor_category.cc
+    map_objects/world/editor_category.h
+    map_objects/world/map_gen.cc
+    map_objects/world/map_gen.h
+    map_objects/world/resource_description.cc
+    map_objects/world/resource_description.h
+    map_objects/world/terrain_description.cc
+    map_objects/world/terrain_description.h
+    map_objects/world/world.cc
+    map_objects/world/world.h
   # TODO(sirver): Uses SDL2 only on WIN32 for a dirty hack.
   USES_SDL2
   DEPENDS

=== modified file 'src/logic/cmd_incorporate.h'
--- src/logic/cmd_incorporate.h	2015-11-27 12:46:45 +0000
+++ src/logic/cmd_incorporate.h	2015-12-11 20:19:40 +0000
@@ -21,7 +21,7 @@
 #define WL_LOGIC_CMD_INCORPORATE_H
 
 #include "logic/cmd_queue.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/worker.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/cmd_queue.cc'
--- src/logic/cmd_queue.cc	2015-11-29 10:10:29 +0000
+++ src/logic/cmd_queue.cc	2015-12-11 20:19:40 +0000
@@ -26,10 +26,10 @@
 #include "io/machdep.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
 #include "logic/playercommand.h"
-#include "logic/worker.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/editor_game_base.cc'
--- src/logic/editor_game_base.cc	2015-11-11 10:03:41 +0000
+++ src/logic/editor_game_base.cc	2015-12-11 20:19:40 +0000
@@ -31,23 +31,23 @@
 #include "economy/road.h"
 #include "graphic/color.h"
 #include "graphic/graphic.h"
-#include "logic/battle.h"
-#include "logic/building.h"
 #include "logic/constants.h"
-#include "logic/dismantlesite.h"
 #include "logic/findimmovable.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/battle.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/dismantlesite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/tribes/ware_descr.h"
+#include "logic/map_objects/tribes/worker.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapregion.h"
 #include "logic/player.h"
 #include "logic/playersmanager.h"
 #include "logic/roadtype.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/tribes/tribes.h"
-#include "logic/ware_descr.h"
-#include "logic/worker.h"
-#include "logic/world/world.h"
 #include "scripting/logic.h"
 #include "scripting/lua_table.h"
 #include "sound/sound_handler.h"

=== modified file 'src/logic/editor_game_base.h'
--- src/logic/editor_game_base.h	2015-11-14 15:58:29 +0000
+++ src/logic/editor_game_base.h	2015-12-11 20:19:40 +0000
@@ -26,8 +26,8 @@
 #include <vector>
 
 #include "base/macros.h"
-#include "logic/bob.h"
-#include "logic/building.h"
+#include "logic/map_objects/bob.h"
+#include "logic/map_objects/tribes/building.h"
 #include "logic/map.h"
 #include "logic/player_area.h"
 #include "notifications/notifications.h"

=== modified file 'src/logic/findbob.cc'
--- src/logic/findbob.cc	2014-09-19 12:54:54 +0000
+++ src/logic/findbob.cc	2015-12-11 20:19:40 +0000
@@ -20,8 +20,8 @@
 #include "logic/findbob.h"
 
 #include "base/macros.h"
+#include "logic/map_objects/tribes/soldier.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/findimmovable.cc'
--- src/logic/findimmovable.cc	2014-09-19 12:54:54 +0000
+++ src/logic/findimmovable.cc	2015-12-11 20:19:40 +0000
@@ -21,9 +21,9 @@
 
 #include "base/macros.h"
 #include "economy/flag.h"
-#include "logic/attackable.h"
-#include "logic/immovable.h"
-#include "logic/militarysite.h"
+#include "logic/map_objects/attackable.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/militarysite.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/findimmovable.h'
--- src/logic/findimmovable.h	2015-02-24 10:29:11 +0000
+++ src/logic/findimmovable.h	2015-12-11 20:19:40 +0000
@@ -22,7 +22,7 @@
 
 #include <stdint.h>
 
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/findnode.cc'
--- src/logic/findnode.cc	2014-12-01 21:50:28 +0000
+++ src/logic/findnode.cc	2015-12-11 20:19:40 +0000
@@ -21,9 +21,8 @@
 
 #include "base/wexception.h"
 #include "logic/field.h"
-#include "logic/immovable.h"
 #include "logic/map.h"
-
+#include "logic/map_objects/immovable.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/game.cc'
--- src/logic/game.cc	2015-11-14 15:58:29 +0000
+++ src/logic/game.cc	2015-12-11 20:19:40 +0000
@@ -43,20 +43,20 @@
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
 #include "io/filewrite.h"
-#include "logic/carrier.h"
 #include "logic/cmd_calculate_statistics.h"
 #include "logic/cmd_luacoroutine.h"
 #include "logic/cmd_luascript.h"
 #include "logic/game_settings.h"
-#include "logic/militarysite.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
 #include "logic/playercommand.h"
 #include "logic/replay.h"
-#include "logic/ship.h"
 #include "logic/single_player_game_controller.h"
-#include "logic/soldier.h"
-#include "logic/trainingsite.h"
-#include "logic/tribes/tribe_descr.h"
 #include "map_io/widelands_map_loader.h"
 #include "network/network.h"
 #include "scripting/logic.h"

=== modified file 'src/logic/game_settings.h'
--- src/logic/game_settings.h	2015-02-23 08:54:16 +0000
+++ src/logic/game_settings.h	2015-12-11 20:19:40 +0000
@@ -25,7 +25,7 @@
 #include <vector>
 
 #include "io/filesystem/layered_filesystem.h"
-#include "logic/tribes/tribe_basic_info.h"
+#include "logic/map_objects/tribes/tribe_basic_info.h"
 #include "logic/widelands.h"
 #include "scripting/lua_interface.h"
 #include "scripting/lua_table.h"

=== modified file 'src/logic/map.cc'
--- src/logic/map.cc	2015-12-05 10:59:02 +0000
+++ src/logic/map.cc	2015-12-11 20:19:40 +0000
@@ -34,17 +34,17 @@
 #include "economy/road.h"
 #include "editor/tools/editor_increase_resources_tool.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "logic/checkstep.h"
 #include "logic/findimmovable.h"
 #include "logic/findnode.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/world/terrain_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapfringeregion.h"
 #include "logic/objective.h"
 #include "logic/pathfield.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/world/terrain_description.h"
-#include "logic/world/world.h"
 #include "map_io/s2map.h"
 #include "map_io/widelands_map_loader.h"
 #include "notifications/notifications.h"

=== modified file 'src/logic/map.h'
--- src/logic/map.h	2015-11-18 08:41:27 +0000
+++ src/logic/map.h	2015-12-11 20:19:40 +0000
@@ -32,7 +32,7 @@
 #include "logic/field.h"
 #include "logic/map_revision.h"
 #include "logic/objective.h"
-#include "logic/walkingdir.h"
+#include "logic/map_objects/walkingdir.h"
 #include "logic/widelands_geometry.h"
 #include "notifications/note_ids.h"
 #include "notifications/notifications.h"

=== added directory 'src/logic/map_objects'
=== renamed file 'src/logic/attackable.h' => 'src/logic/map_objects/attackable.h'
--- src/logic/attackable.h	2014-09-19 12:54:54 +0000
+++ src/logic/map_objects/attackable.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_ATTACKABLE_H
-#define WL_LOGIC_ATTACKABLE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_ATTACKABLE_H
+#define WL_LOGIC_MAP_OBJECTS_ATTACKABLE_H
 
 namespace Widelands {
 
@@ -81,4 +81,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_ATTACKABLE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_ATTACKABLE_H

=== renamed file 'src/logic/bob.cc' => 'src/logic/map_objects/bob.cc'
--- src/logic/bob.cc	2015-12-05 10:59:02 +0000
+++ src/logic/map_objects/bob.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/bob.h"
+#include "logic/map_objects/bob.h"
 
 #include <cstdlib>
 #include <memory>
@@ -33,16 +33,16 @@
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/backtrace.h"
-#include "logic/checkstep.h"
-#include "logic/critter.h"
 #include "logic/findbob.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/world/critter.h"
 #include "logic/path.h"
 #include "logic/player.h"
-#include "logic/ship.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
 #include "logic/widelands_geometry_io.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"

=== renamed file 'src/logic/bob.h' => 'src/logic/map_objects/bob.h'
--- src/logic/bob.h	2015-11-01 10:11:56 +0000
+++ src/logic/map_objects/bob.h	2015-12-11 20:19:40 +0000
@@ -17,16 +17,16 @@
  *
  */
 
-#ifndef WL_LOGIC_BOB_H
-#define WL_LOGIC_BOB_H
+#ifndef WL_LOGIC_MAP_OBJECTS_BOB_H
+#define WL_LOGIC_MAP_OBJECTS_BOB_H
 
 #include "base/macros.h"
 #include "base/point.h"
 #include "economy/route.h"
 #include "graphic/animation.h"
 #include "graphic/diranimations.h"
-#include "logic/instances.h"
-#include "logic/walkingdir.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/walkingdir.h"
 #include "logic/widelands_geometry.h"
 
 namespace Widelands {
@@ -411,4 +411,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_BOB_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_BOB_H

=== renamed file 'src/logic/buildcost.cc' => 'src/logic/map_objects/buildcost.cc'
--- src/logic/buildcost.cc	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/buildcost.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/buildcost.h"
+#include "logic/map_objects/buildcost.h"
 
 #include <map>
 #include <memory>
@@ -26,8 +26,8 @@
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game_data_error.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/tribes/tribes.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribes.h"
 
 namespace Widelands {
 

=== renamed file 'src/logic/buildcost.h' => 'src/logic/map_objects/buildcost.h'
--- src/logic/buildcost.h	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/buildcost.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_BUILDCOST_H
-#define WL_LOGIC_BUILDCOST_H
+#ifndef WL_LOGIC_MAP_OBJECTS_BUILDCOST_H
+#define WL_LOGIC_MAP_OBJECTS_BUILDCOST_H
 
 #include <map>
 #include <memory>
@@ -47,4 +47,4 @@
 
 } // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_BUILDCOST_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_BUILDCOST_H

=== renamed file 'src/logic/checkstep.cc' => 'src/logic/map_objects/checkstep.cc'
--- src/logic/checkstep.cc	2014-09-19 12:54:54 +0000
+++ src/logic/map_objects/checkstep.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/checkstep.h"
+#include "logic/map_objects/checkstep.h"
 
 #include "economy/flag.h"
 #include "economy/road.h"

=== renamed file 'src/logic/checkstep.h' => 'src/logic/map_objects/checkstep.h'
--- src/logic/checkstep.h	2014-09-19 12:54:54 +0000
+++ src/logic/map_objects/checkstep.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_CHECKSTEP_H
-#define WL_LOGIC_CHECKSTEP_H
+#ifndef WL_LOGIC_MAP_OBJECTS_CHECKSTEP_H
+#define WL_LOGIC_MAP_OBJECTS_CHECKSTEP_H
 
 #include <set>
 #include <vector>
@@ -204,4 +204,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_CHECKSTEP_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_CHECKSTEP_H

=== renamed file 'src/logic/immovable.cc' => 'src/logic/map_objects/immovable.cc'
--- src/logic/immovable.cc	2015-12-03 21:12:12 +0000
+++ src/logic/map_objects/immovable.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/immovable.h"
+#include "logic/map_objects/immovable.h"
 
 #include <cstdio>
 #include <cstring>
@@ -42,15 +42,15 @@
 #include "logic/field.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
-#include "logic/immovable_program.h"
 #include "logic/map.h"
+#include "logic/map_objects/immovable_program.h"
+#include "logic/map_objects/terrain_affinity.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapfringeregion.h"
 #include "logic/player.h"
-#include "logic/terrain_affinity.h"
-#include "logic/tribes/tribe_descr.h"
 #include "logic/widelands_geometry_io.h"
-#include "logic/worker.h"
-#include "logic/world/world.h"
 #include "map_io/tribes_legacy_lookup_table.h"
 #include "map_io/world_legacy_lookup_table.h"
 #include "notifications/notifications.h"

=== renamed file 'src/logic/immovable.h' => 'src/logic/map_objects/immovable.h'
--- src/logic/immovable.h	2015-11-25 08:42:28 +0000
+++ src/logic/map_objects/immovable.h	2015-12-11 20:19:40 +0000
@@ -17,16 +17,16 @@
  *
  */
 
-#ifndef WL_LOGIC_IMMOVABLE_H
-#define WL_LOGIC_IMMOVABLE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_IMMOVABLE_H
+#define WL_LOGIC_MAP_OBJECTS_IMMOVABLE_H
 
 #include <memory>
 #include <unordered_map>
 
 #include "base/macros.h"
 #include "graphic/animation.h"
-#include "logic/buildcost.h"
-#include "logic/instances.h"
+#include "logic/map_objects/buildcost.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/widelands_geometry.h"
 #include "notifications/note_ids.h"
 #include "notifications/notifications.h"
@@ -352,4 +352,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_IMMOVABLE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_IMMOVABLE_H

=== renamed file 'src/logic/immovable_program.h' => 'src/logic/map_objects/immovable_program.h'
--- src/logic/immovable_program.h	2015-11-01 10:11:56 +0000
+++ src/logic/map_objects/immovable_program.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_IMMOVABLE_PROGRAM_H
-#define WL_LOGIC_IMMOVABLE_PROGRAM_H
+#ifndef WL_LOGIC_MAP_OBJECTS_IMMOVABLE_PROGRAM_H
+#define WL_LOGIC_MAP_OBJECTS_IMMOVABLE_PROGRAM_H
 
 #include <cstring>
 #include <string>
@@ -29,8 +29,8 @@
  * Implementation is in immovable.cc
  */
 
-#include "logic/buildcost.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/buildcost.h"
+#include "logic/map_objects/immovable.h"
 
 namespace Widelands {
 
@@ -217,4 +217,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_IMMOVABLE_PROGRAM_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_IMMOVABLE_PROGRAM_H

=== renamed file 'src/logic/instances.cc' => 'src/logic/map_objects/map_object.cc'
--- src/logic/instances.cc	2015-11-24 17:08:24 +0000
+++ src/logic/map_objects/map_object.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 
 #include <algorithm>
 #include <cstdarg>

=== renamed file 'src/logic/instances.h' => 'src/logic/map_objects/map_object.h'
--- src/logic/instances.h	2015-11-27 12:46:45 +0000
+++ src/logic/map_objects/map_object.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_INSTANCES_H
-#define WL_LOGIC_INSTANCES_H
+#ifndef WL_LOGIC_MAP_OBJECTS_MAP_OBJECT_H
+#define WL_LOGIC_MAP_OBJECTS_MAP_OBJECT_H
 
 #include <cstring>
 #include <map>
@@ -544,4 +544,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_INSTANCES_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_MAP_OBJECT_H

=== renamed file 'src/logic/terrain_affinity.cc' => 'src/logic/map_objects/terrain_affinity.cc'
--- src/logic/terrain_affinity.cc	2015-09-04 11:11:50 +0000
+++ src/logic/map_objects/terrain_affinity.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/terrain_affinity.h"
+#include "logic/map_objects/terrain_affinity.h"
 
 #include <vector>
 
@@ -25,8 +25,8 @@
 #include "logic/field.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
+#include "logic/map_objects/world/terrain_description.h"
 #include "logic/widelands_geometry.h"
-#include "logic/world/terrain_description.h"
 #include "scripting/lua_table.h"
 
 namespace Widelands {

=== renamed file 'src/logic/terrain_affinity.h' => 'src/logic/map_objects/terrain_affinity.h'
--- src/logic/terrain_affinity.h	2015-08-15 09:57:27 +0000
+++ src/logic/map_objects/terrain_affinity.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_TERRAIN_AFFINITY_H
-#define WL_LOGIC_TERRAIN_AFFINITY_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TERRAIN_AFFINITY_H
+#define WL_LOGIC_MAP_OBJECTS_TERRAIN_AFFINITY_H
 
 #include <string>
 
@@ -71,4 +71,4 @@
 
 }  // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_TERRAIN_AFFINITY_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TERRAIN_AFFINITY_H

=== renamed directory 'src/logic/tribes' => 'src/logic/map_objects/tribes'
=== renamed file 'src/logic/battle.cc' => 'src/logic/map_objects/tribes/battle.cc'
--- src/logic/battle.cc	2015-10-24 15:42:37 +0000
+++ src/logic/map_objects/tribes/battle.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/battle.h"
+#include "logic/map_objects/tribes/battle.h"
 
 #include <memory>
 
@@ -27,8 +27,8 @@
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/soldier.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== renamed file 'src/logic/battle.h' => 'src/logic/map_objects/tribes/battle.h'
--- src/logic/battle.h	2014-10-03 19:15:10 +0000
+++ src/logic/map_objects/tribes/battle.h	2015-12-11 20:19:40 +0000
@@ -16,10 +16,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  *
  */
-#ifndef WL_LOGIC_BATTLE_H
-#define WL_LOGIC_BATTLE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_BATTLE_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_BATTLE_H
 
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 
 namespace Widelands {
 class Soldier;
@@ -122,4 +122,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_BATTLE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_BATTLE_H

=== renamed file 'src/logic/bill_of_materials.h' => 'src/logic/map_objects/tribes/bill_of_materials.h'
--- src/logic/bill_of_materials.h	2015-11-21 11:47:05 +0000
+++ src/logic/map_objects/tribes/bill_of_materials.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_BILL_OF_MATERIALS_H
-#define WL_LOGIC_BILL_OF_MATERIALS_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_BILL_OF_MATERIALS_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_BILL_OF_MATERIALS_H
 
 #include <vector>
 
@@ -47,4 +47,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_BILL_OF_MATERIALS_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_BILL_OF_MATERIALS_H

=== renamed file 'src/logic/building.cc' => 'src/logic/map_objects/tribes/building.cc'
--- src/logic/building.cc	2015-12-03 21:12:12 +0000
+++ src/logic/map_objects/tribes/building.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/building.h"
+#include "logic/map_objects/tribes/building.h"
 
 #include <cstdio>
 #include <cstring>
@@ -38,15 +38,15 @@
 #include "graphic/text_layout.h"
 #include "io/filesystem/filesystem.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "logic/constructionsite.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/productionsite.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/tribes/tribes.h"
-#include "logic/worker.h"
 #include "sound/sound_handler.h"
 #include "wui/interactive_player.h"
 

=== renamed file 'src/logic/building.h' => 'src/logic/map_objects/tribes/building.h'
--- src/logic/building.h	2015-12-03 21:12:12 +0000
+++ src/logic/map_objects/tribes/building.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_BUILDING_H
-#define WL_LOGIC_BUILDING_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_BUILDING_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_BUILDING_H
 
 #include <cstring>
 #include <string>
@@ -28,14 +28,13 @@
 
 #include "ai/ai_hints.h"
 #include "base/macros.h"
-#include "logic/bill_of_materials.h"
-#include "logic/buildcost.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/tribes/bill_of_materials.h"
+#include "logic/map_objects/buildcost.h"
+#include "logic/map_objects/immovable.h"
 #include "logic/message.h"
-#include "logic/soldier_counts.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "logic/widelands.h"
-#include "logic/workarea_info.h"
+#include "logic/map_objects/tribes/workarea_info.h"
 #include "scripting/lua_table.h"
 
 namespace UI {class Window;}
@@ -315,4 +314,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_BUILDING_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_BUILDING_H

=== renamed file 'src/logic/carrier.cc' => 'src/logic/map_objects/tribes/carrier.cc'
--- src/logic/carrier.cc	2015-10-24 15:42:37 +0000
+++ src/logic/map_objects/tribes/carrier.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/carrier.h"
+#include "logic/map_objects/tribes/carrier.h"
 
 #include "base/macros.h"
 #include "base/wexception.h"

=== renamed file 'src/logic/carrier.h' => 'src/logic/map_objects/tribes/carrier.h'
--- src/logic/carrier.h	2015-10-22 10:49:14 +0000
+++ src/logic/map_objects/tribes/carrier.h	2015-12-11 20:19:40 +0000
@@ -17,11 +17,11 @@
  *
  */
 
-#ifndef WL_LOGIC_CARRIER_H
-#define WL_LOGIC_CARRIER_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_CARRIER_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_CARRIER_H
 
 #include "base/macros.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/worker.h"
 
 namespace Widelands {
 
@@ -109,4 +109,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_CARRIER_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_CARRIER_H

=== renamed file 'src/logic/constructionsite.cc' => 'src/logic/map_objects/tribes/constructionsite.cc'
--- src/logic/constructionsite.cc	2015-11-20 19:09:59 +0000
+++ src/logic/map_objects/tribes/constructionsite.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/constructionsite.h"
+#include "logic/map_objects/tribes/constructionsite.h"
 
 #include <cstdio>
 
@@ -33,8 +33,8 @@
 #include "graphic/text_constants.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "sound/sound_handler.h"
 #include "ui_basic/window.h"
 #include "wui/interactive_gamebase.h"

=== renamed file 'src/logic/constructionsite.h' => 'src/logic/map_objects/tribes/constructionsite.h'
--- src/logic/constructionsite.h	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/constructionsite.h	2015-12-11 20:19:40 +0000
@@ -17,13 +17,13 @@
  *
  */
 
-#ifndef WL_LOGIC_CONSTRUCTIONSITE_H
-#define WL_LOGIC_CONSTRUCTIONSITE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_CONSTRUCTIONSITE_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_CONSTRUCTIONSITE_H
 
 #include <vector>
 
 #include "base/macros.h"
-#include "logic/partially_finished_building.h"
+#include "logic/map_objects/tribes/partially_finished_building.h"
 #include "scripting/lua_table.h"
 
 namespace Widelands {
@@ -116,4 +116,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_CONSTRUCTIONSITE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_CONSTRUCTIONSITE_H

=== renamed file 'src/logic/dismantlesite.cc' => 'src/logic/map_objects/tribes/dismantlesite.cc'
--- src/logic/dismantlesite.cc	2015-11-20 19:09:59 +0000
+++ src/logic/map_objects/tribes/dismantlesite.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/dismantlesite.h"
+#include "logic/map_objects/tribes/dismantlesite.h"
 
 #include <cstdio>
 
@@ -32,8 +32,8 @@
 #include "graphic/rendertarget.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "sound/sound_handler.h"
 
 namespace Widelands {

=== renamed file 'src/logic/dismantlesite.h' => 'src/logic/map_objects/tribes/dismantlesite.h'
--- src/logic/dismantlesite.h	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/dismantlesite.h	2015-12-11 20:19:40 +0000
@@ -17,12 +17,12 @@
  *
  */
 
-#ifndef WL_LOGIC_DISMANTLESITE_H
-#define WL_LOGIC_DISMANTLESITE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_DISMANTLESITE_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_DISMANTLESITE_H
 
 #include "base/macros.h"
-#include "logic/building.h"
-#include "logic/partially_finished_building.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/partially_finished_building.h"
 #include "logic/player.h"
 #include "scripting/lua_table.h"
 
@@ -87,4 +87,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_DISMANTLESITE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_DISMANTLESITE_H

=== renamed file 'src/logic/militarysite.cc' => 'src/logic/map_objects/tribes/militarysite.cc'
--- src/logic/militarysite.cc	2015-11-21 11:34:10 +0000
+++ src/logic/map_objects/tribes/militarysite.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/militarysite.h"
+#include "logic/map_objects/tribes/militarysite.h"
 
 #include <clocale>
 #include <cstdio>
@@ -30,15 +30,15 @@
 #include "base/macros.h"
 #include "economy/flag.h"
 #include "economy/request.h"
-#include "logic/battle.h"
 #include "logic/editor_game_base.h"
 #include "logic/findbob.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/battle.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/message_queue.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/worker.h"
 
 namespace Widelands {
 

=== renamed file 'src/logic/militarysite.h' => 'src/logic/map_objects/tribes/militarysite.h'
--- src/logic/militarysite.h	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/militarysite.h	2015-12-11 20:19:40 +0000
@@ -17,16 +17,16 @@
  *
  */
 
-#ifndef WL_LOGIC_MILITARYSITE_H
-#define WL_LOGIC_MILITARYSITE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_MILITARYSITE_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_MILITARYSITE_H
 
 #include <memory>
 
 #include "base/macros.h"
-#include "logic/attackable.h"
-#include "logic/productionsite.h"
-#include "logic/requirements.h"
-#include "logic/soldiercontrol.h"
+#include "logic/map_objects/attackable.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/requirements.h"
+#include "logic/map_objects/tribes/soldiercontrol.h"
 #include "scripting/lua_table.h"
 
 namespace Widelands {
@@ -179,4 +179,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_MILITARYSITE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_MILITARYSITE_H

=== renamed file 'src/logic/partially_finished_building.cc' => 'src/logic/map_objects/tribes/partially_finished_building.cc'
--- src/logic/partially_finished_building.cc	2015-11-20 18:16:22 +0000
+++ src/logic/map_objects/tribes/partially_finished_building.cc	2015-12-11 20:19:40 +0000
@@ -17,15 +17,15 @@
  *
  */
 
-#include "logic/partially_finished_building.h"
+#include "logic/map_objects/tribes/partially_finished_building.h"
 
 #include "base/macros.h"
 #include "economy/request.h"
 #include "economy/wares_queue.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/worker.h"
 #include "sound/sound_handler.h"
 
 namespace Widelands {

=== renamed file 'src/logic/partially_finished_building.h' => 'src/logic/map_objects/tribes/partially_finished_building.h'
--- src/logic/partially_finished_building.h	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/partially_finished_building.h	2015-12-11 20:19:40 +0000
@@ -17,10 +17,10 @@
  *
  */
 
-#ifndef WL_LOGIC_PARTIALLY_FINISHED_BUILDING_H
-#define WL_LOGIC_PARTIALLY_FINISHED_BUILDING_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_PARTIALLY_FINISHED_BUILDING_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_PARTIALLY_FINISHED_BUILDING_H
 
-#include "logic/building.h"
+#include "logic/map_objects/tribes/building.h"
 
 namespace Widelands {
 
@@ -81,4 +81,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_PARTIALLY_FINISHED_BUILDING_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_PARTIALLY_FINISHED_BUILDING_H

=== renamed file 'src/logic/production_program.cc' => 'src/logic/map_objects/tribes/production_program.cc'
--- src/logic/production_program.cc	2015-12-03 21:12:12 +0000
+++ src/logic/map_objects/tribes/production_program.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/production_program.h"
+#include "logic/map_objects/tribes/production_program.h"
 
 #include <memory>
 #include <sstream>
@@ -34,22 +34,22 @@
 #include "graphic/graphic.h"
 #include "helper.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "logic/checkstep.h"
 #include "logic/findimmovable.h"
 #include "logic/findnode.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/soldiercontrol.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker_program.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapregion.h"
 #include "logic/message_queue.h"
 #include "logic/player.h"
-#include "logic/productionsite.h"
-#include "logic/soldier.h"
-#include "logic/soldiercontrol.h"
-#include "logic/trainingsite.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/worker_program.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/world.h"
 #include "sound/sound_handler.h"
 
 namespace Widelands {

=== renamed file 'src/logic/production_program.h' => 'src/logic/map_objects/tribes/production_program.h'
--- src/logic/production_program.h	2015-11-21 11:47:05 +0000
+++ src/logic/map_objects/tribes/production_program.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_PRODUCTION_PROGRAM_H
-#define WL_LOGIC_PRODUCTION_PROGRAM_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_PRODUCTION_PROGRAM_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_PRODUCTION_PROGRAM_H
 
 #include <cassert>
 #include <cstring>
@@ -31,11 +31,10 @@
 
 #include "base/log.h"
 #include "base/macros.h"
-#include "logic/bill_of_materials.h"
-#include "logic/buildcost.h"
+#include "logic/map_objects/tribes/bill_of_materials.h"
 #include "logic/editor_game_base.h"
-#include "logic/program_result.h"
-#include "logic/training_attribute.h"
+#include "logic/map_objects/tribes/program_result.h"
+#include "logic/map_objects/tribes/training_attribute.h"
 #include "logic/widelands.h"
 #include "scripting/lua_table.h"
 
@@ -538,4 +537,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_PRODUCTION_PROGRAM_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_PRODUCTION_PROGRAM_H

=== renamed file 'src/logic/productionsite.cc' => 'src/logic/map_objects/tribes/productionsite.cc'
--- src/logic/productionsite.cc	2015-12-03 21:12:12 +0000
+++ src/logic/map_objects/tribes/productionsite.cc	2015-12-11 20:19:40 +0000
@@ -18,7 +18,7 @@
  */
 
 
-#include "logic/productionsite.h"
+#include "logic/map_objects/tribes/productionsite.h"
 
 #include <memory>
 
@@ -32,15 +32,15 @@
 #include "economy/ware_instance.h"
 #include "economy/wares_queue.h"
 #include "graphic/text_constants.h"
-#include "logic/carrier.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warelist.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warelist.h"
-#include "logic/world/world.h"
 
 namespace Widelands {
 

=== renamed file 'src/logic/productionsite.h' => 'src/logic/map_objects/tribes/productionsite.h'
--- src/logic/productionsite.h	2015-12-03 21:12:12 +0000
+++ src/logic/map_objects/tribes/productionsite.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_PRODUCTIONSITE_H
-#define WL_LOGIC_PRODUCTIONSITE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_PRODUCTIONSITE_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_PRODUCTIONSITE_H
 
 #include <cstring>
 #include <map>
@@ -28,10 +28,10 @@
 #include <vector>
 
 #include "base/macros.h"
-#include "logic/bill_of_materials.h"
-#include "logic/building.h"
-#include "logic/production_program.h"
-#include "logic/program_result.h"
+#include "logic/map_objects/tribes/bill_of_materials.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/production_program.h"
+#include "logic/map_objects/tribes/program_result.h"
 #include "scripting/lua_table.h"
 
 namespace Widelands {
@@ -335,4 +335,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_PRODUCTIONSITE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_PRODUCTIONSITE_H

=== renamed file 'src/logic/program_result.h' => 'src/logic/map_objects/tribes/program_result.h'
--- src/logic/program_result.h	2014-09-09 11:23:11 +0000
+++ src/logic/map_objects/tribes/program_result.h	2015-12-11 20:19:40 +0000
@@ -17,12 +17,12 @@
  *
  */
 
-#ifndef WL_LOGIC_PROGRAM_RESULT_H
-#define WL_LOGIC_PROGRAM_RESULT_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_PROGRAM_RESULT_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_PROGRAM_RESULT_H
 
 namespace Widelands {
 enum ProgramResult {None = 0, Failed = 1, Completed = 2, Skipped = 3};
 enum ProgramResultHandlingMethod {Fail, Complete, Skip, Continue, Repeat};
 }
 
-#endif  // end of include guard: WL_LOGIC_PROGRAM_RESULT_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_PROGRAM_RESULT_H

=== renamed file 'src/logic/requirements.cc' => 'src/logic/map_objects/tribes/requirements.cc'
--- src/logic/requirements.cc	2015-10-24 15:42:37 +0000
+++ src/logic/map_objects/tribes/requirements.cc	2015-12-11 20:19:40 +0000
@@ -17,13 +17,13 @@
  *
  */
 
-#include "logic/requirements.h"
+#include "logic/map_objects/tribes/requirements.h"
 
 #include "base/i18n.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game_data_error.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 
 namespace Widelands {
 

=== renamed file 'src/logic/requirements.h' => 'src/logic/map_objects/tribes/requirements.h'
--- src/logic/requirements.h	2014-09-19 12:54:54 +0000
+++ src/logic/map_objects/tribes/requirements.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_REQUIREMENTS_H
-#define WL_LOGIC_REQUIREMENTS_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_REQUIREMENTS_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_REQUIREMENTS_H
 
 #include <climits>
 #include <map>
@@ -26,7 +26,7 @@
 
 #include <boost/shared_ptr.hpp>
 
-#include "logic/training_attribute.h"
+#include "logic/map_objects/tribes/training_attribute.h"
 
 class FileRead;
 class FileWrite;
@@ -194,4 +194,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_REQUIREMENTS_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_REQUIREMENTS_H

=== renamed file 'src/logic/road_textures.cc' => 'src/logic/map_objects/tribes/road_textures.cc'
--- src/logic/road_textures.cc	2015-02-08 18:16:41 +0000
+++ src/logic/map_objects/tribes/road_textures.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/road_textures.h"
+#include "logic/map_objects/tribes/road_textures.h"
 
 #include <memory>
 

=== renamed file 'src/logic/road_textures.h' => 'src/logic/map_objects/tribes/road_textures.h'
--- src/logic/road_textures.h	2015-02-08 18:16:41 +0000
+++ src/logic/map_objects/tribes/road_textures.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_ROAD_TEXTURES_H
-#define WL_LOGIC_ROAD_TEXTURES_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_ROAD_TEXTURES_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_ROAD_TEXTURES_H
 
 #include <memory>
 #include <vector>
@@ -42,4 +42,4 @@
 	std::vector<std::unique_ptr<Texture>> busy_textures_;
 };
 
-#endif  // end of include guard: WL_LOGIC_ROAD_TEXTURES_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_ROAD_TEXTURES_H

=== renamed file 'src/logic/ship.cc' => 'src/logic/map_objects/tribes/ship.cc'
--- src/logic/ship.cc	2015-11-21 11:34:10 +0000
+++ src/logic/map_objects/tribes/ship.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/ship.h"
+#include "logic/map_objects/tribes/ship.h"
 
 #include <memory>
 
@@ -32,17 +32,17 @@
 #include "graphic/graphic.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/constructionsite.h"
 #include "logic/findbob.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/mapastar.h"
 #include "logic/mapregion.h"
 #include "logic/path.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
 #include "logic/widelands_geometry_io.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"

=== renamed file 'src/logic/ship.h' => 'src/logic/map_objects/tribes/ship.h'
--- src/logic/ship.h	2015-11-04 16:48:56 +0000
+++ src/logic/map_objects/tribes/ship.h	2015-12-11 20:19:40 +0000
@@ -17,14 +17,14 @@
  *
  */
 
-#ifndef WL_LOGIC_SHIP_H
-#define WL_LOGIC_SHIP_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_SHIP_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_SHIP_H
 
 #include <list>
 #include <memory>
 
 #include "base/macros.h"
-#include "logic/bob.h"
+#include "logic/map_objects/bob.h"
 #include "economy/shippingitem.h"
 #include "graphic/diranimations.h"
 
@@ -288,4 +288,4 @@
 
 } // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_SHIP_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_SHIP_H

=== renamed file 'src/logic/soldier.cc' => 'src/logic/map_objects/tribes/soldier.cc'
--- src/logic/soldier.cc	2015-12-03 08:45:37 +0000
+++ src/logic/map_objects/tribes/soldier.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/soldier.h"
+#include "logic/map_objects/tribes/soldier.h"
 
 #include <cstdio>
 #include <list>
@@ -34,10 +34,6 @@
 #include "helper.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/attackable.h"
-#include "logic/battle.h"
-#include "logic/building.h"
-#include "logic/checkstep.h"
 #include "logic/editor_game_base.h"
 #include "logic/findbob.h"
 #include "logic/findimmovable.h"
@@ -45,11 +41,15 @@
 #include "logic/game.h"
 #include "logic/game_controller.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/attackable.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/tribes/battle.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/message_queue.h"
-#include "logic/militarysite.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 #include "wui/mapviewpixelconstants.h"

=== renamed file 'src/logic/soldier.h' => 'src/logic/map_objects/tribes/soldier.h'
--- src/logic/soldier.h	2015-11-25 08:42:28 +0000
+++ src/logic/map_objects/tribes/soldier.h	2015-12-11 20:19:40 +0000
@@ -17,14 +17,14 @@
  *
  */
 
-#ifndef WL_LOGIC_SOLDIER_H
-#define WL_LOGIC_SOLDIER_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_SOLDIER_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_SOLDIER_H
 
 #include <memory>
 
 #include "base/macros.h"
-#include "logic/training_attribute.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/training_attribute.h"
+#include "logic/map_objects/tribes/worker.h"
 
 #define SOLDIER_HP_BAR_WIDTH 13
 
@@ -312,4 +312,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_SOLDIER_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_SOLDIER_H

=== renamed file 'src/logic/soldiercontrol.h' => 'src/logic/map_objects/tribes/soldiercontrol.h'
--- src/logic/soldiercontrol.h	2014-09-19 12:54:54 +0000
+++ src/logic/map_objects/tribes/soldiercontrol.h	2015-12-11 20:19:40 +0000
@@ -17,13 +17,14 @@
  *
  */
 
-#ifndef WL_LOGIC_SOLDIERCONTROL_H
-#define WL_LOGIC_SOLDIERCONTROL_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_SOLDIERCONTROL_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_SOLDIERCONTROL_H
 
 #include <vector>
 
 namespace Widelands {
 
+class EditorGameBase;
 class Soldier;
 
 /**
@@ -116,4 +117,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_SOLDIERCONTROL_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_SOLDIERCONTROL_H

=== renamed file 'src/logic/training_attribute.h' => 'src/logic/map_objects/tribes/training_attribute.h'
--- src/logic/training_attribute.h	2014-09-10 10:18:46 +0000
+++ src/logic/map_objects/tribes/training_attribute.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_TRAINING_ATTRIBUTE_H
-#define WL_LOGIC_TRAINING_ATTRIBUTE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_TRAINING_ATTRIBUTE_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_TRAINING_ATTRIBUTE_H
 
 namespace Widelands {
 
@@ -36,4 +36,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_TRAINING_ATTRIBUTE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_TRAINING_ATTRIBUTE_H

=== renamed file 'src/logic/trainingsite.cc' => 'src/logic/map_objects/tribes/trainingsite.cc'
--- src/logic/trainingsite.cc	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/trainingsite.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/trainingsite.h"
+#include "logic/map_objects/tribes/trainingsite.h"
 
 #include <cstdio>
 #include <memory>
@@ -30,11 +30,11 @@
 #include "helper.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/production_program.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/production_program.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/worker.h"
 
 namespace Widelands {
 

=== renamed file 'src/logic/trainingsite.h' => 'src/logic/map_objects/tribes/trainingsite.h'
--- src/logic/trainingsite.h	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/trainingsite.h	2015-12-11 20:19:40 +0000
@@ -17,13 +17,13 @@
  *
  */
 
-#ifndef WL_LOGIC_TRAININGSITE_H
-#define WL_LOGIC_TRAININGSITE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_TRAININGSITE_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_TRAININGSITE_H
 
 #include "base/macros.h"
-#include "logic/productionsite.h"
-#include "logic/soldiercontrol.h"
-#include "logic/training_attribute.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/soldiercontrol.h"
+#include "logic/map_objects/tribes/training_attribute.h"
 
 struct TrainingSiteWindow;
 
@@ -275,4 +275,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_TRAININGSITE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_TRAININGSITE_H

=== modified file 'src/logic/map_objects/tribes/tribe_basic_info.cc'
--- src/logic/tribes/tribe_basic_info.cc	2015-09-06 08:35:03 +0000
+++ src/logic/map_objects/tribes/tribe_basic_info.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/tribes/tribe_basic_info.h"
+#include "logic/map_objects/tribes/tribe_basic_info.h"
 
 #include <memory>
 

=== modified file 'src/logic/map_objects/tribes/tribe_basic_info.h'
--- src/logic/tribes/tribe_basic_info.h	2015-09-06 08:35:03 +0000
+++ src/logic/map_objects/tribes/tribe_basic_info.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_TRIBES_TRIBE_BASIC_INFO_H
-#define WL_LOGIC_TRIBES_TRIBE_BASIC_INFO_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_TRIBE_BASIC_INFO_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_TRIBE_BASIC_INFO_H
 
 #include <memory>
 #include <string>
@@ -57,4 +57,4 @@
 	std::vector<Initialization> initializations;
 };
 
-#endif  // end of include guard: WL_LOGIC_TRIBES_TRIBE_BASIC_INFO_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_TRIBE_BASIC_INFO_H

=== modified file 'src/logic/map_objects/tribes/tribe_descr.cc'
--- src/logic/tribes/tribe_descr.cc	2015-11-21 11:47:05 +0000
+++ src/logic/map_objects/tribes/tribe_descr.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 
 #include <algorithm>
 #include <iostream>
@@ -31,21 +31,21 @@
 #include "base/wexception.h"
 #include "graphic/graphic.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "logic/carrier.h"
-#include "logic/constructionsite.h"
-#include "logic/dismantlesite.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
-#include "logic/immovable.h"
-#include "logic/militarysite.h"
-#include "logic/ship.h"
-#include "logic/soldier.h"
-#include "logic/trainingsite.h"
-#include "logic/warehouse.h"
-#include "logic/worker.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/dismantlesite.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/world.h"
 #include "scripting/lua_interface.h"
 #include "scripting/lua_table.h"
 

=== modified file 'src/logic/map_objects/tribes/tribe_descr.h'
--- src/logic/tribes/tribe_descr.h	2015-11-11 10:15:37 +0000
+++ src/logic/map_objects/tribes/tribe_descr.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_TRIBES_TRIBE_DESCR_H
-#define WL_LOGIC_TRIBES_TRIBE_DESCR_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_TRIBE_DESCR_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_TRIBE_DESCR_H
 
 #include <map>
 #include <memory>
@@ -26,16 +26,16 @@
 
 #include "base/macros.h"
 #include "graphic/animation.h"
-#include "logic/building.h"
+#include "logic/map_objects/tribes/building.h"
 #include "logic/description_maintainer.h"
 #include "logic/editor_game_base.h"
-#include "logic/immovable.h"
-#include "logic/road_textures.h"
-#include "logic/ship.h"
-#include "logic/tribes/tribe_basic_info.h"
-#include "logic/tribes/tribes.h"
-#include "logic/ware_descr.h"
-#include "logic/worker.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/road_textures.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/tribe_basic_info.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/tribes/ware_descr.h"
+#include "logic/map_objects/tribes/worker.h"
 
 namespace Widelands {
 
@@ -189,4 +189,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_TRIBES_TRIBE_DESCR_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_TRIBE_DESCR_H

=== modified file 'src/logic/map_objects/tribes/tribes.cc'
--- src/logic/tribes/tribes.cc	2015-11-11 10:15:37 +0000
+++ src/logic/map_objects/tribes/tribes.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/tribes/tribes.h"
+#include "logic/map_objects/tribes/tribes.h"
 
 #include <memory>
 

=== modified file 'src/logic/map_objects/tribes/tribes.h'
--- src/logic/tribes/tribes.h	2015-11-11 10:15:37 +0000
+++ src/logic/map_objects/tribes/tribes.h	2015-12-11 20:19:40 +0000
@@ -17,28 +17,28 @@
  *
  */
 
-#ifndef WL_LOGIC_TRIBES_TRIBES_H
-#define WL_LOGIC_TRIBES_TRIBES_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_TRIBES_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_TRIBES_H
 
 #include <memory>
 
 #include "base/macros.h"
 #include "graphic/texture.h"
-#include "logic/carrier.h"
-#include "logic/constructionsite.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/constructionsite.h"
 #include "logic/description_maintainer.h"
-#include "logic/dismantlesite.h"
-#include "logic/immovable.h"
-#include "logic/militarysite.h"
-#include "logic/productionsite.h"
-#include "logic/ship.h"
-#include "logic/soldier.h"
-#include "logic/trainingsite.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/tribes/tribe_basic_info.h"
-#include "logic/warehouse.h"
-#include "logic/ware_descr.h"
-#include "logic/worker_descr.h"
+#include "logic/map_objects/tribes/dismantlesite.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribe_basic_info.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/ware_descr.h"
+#include "logic/map_objects/tribes/worker_descr.h"
 #include "scripting/lua_table.h"
 
 namespace Widelands {
@@ -161,4 +161,4 @@
 
 }  // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_TRIBES_TRIBES_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_TRIBES_H

=== renamed file 'src/logic/ware_descr.cc' => 'src/logic/map_objects/tribes/ware_descr.cc'
--- src/logic/ware_descr.cc	2015-11-21 11:47:05 +0000
+++ src/logic/map_objects/tribes/ware_descr.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/ware_descr.h"
+#include "logic/map_objects/tribes/ware_descr.h"
 
 #include <memory>
 
@@ -27,7 +27,7 @@
 #include "graphic/animation.h"
 #include "graphic/graphic.h"
 #include "logic/game_data_error.h"
-#include "logic/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 
 namespace Widelands {
 

=== renamed file 'src/logic/ware_descr.h' => 'src/logic/map_objects/tribes/ware_descr.h'
--- src/logic/ware_descr.h	2015-11-21 11:47:05 +0000
+++ src/logic/map_objects/tribes/ware_descr.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_WARE_DESCR_H
-#define WL_LOGIC_WARE_DESCR_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_WARE_DESCR_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_WARE_DESCR_H
 
 #include <cstring>
 #include <string>
@@ -27,7 +27,7 @@
 #include <stdint.h>
 
 #include "base/macros.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 #include "scripting/lua_table.h"
 
 class Image;
@@ -94,4 +94,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_WARE_DESCR_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_WARE_DESCR_H

=== renamed file 'src/logic/warehouse.cc' => 'src/logic/map_objects/tribes/warehouse.cc'
--- src/logic/warehouse.cc	2015-11-21 11:34:10 +0000
+++ src/logic/map_objects/tribes/warehouse.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/warehouse.h"
+#include "logic/map_objects/tribes/warehouse.h"
 
 #include <algorithm>
 
@@ -27,6 +27,7 @@
 #include "base/macros.h"
 #include "base/wexception.h"
 #include "economy/economy.h"
+#include "economy/expedition_bootstrap.h"
 #include "economy/flag.h"
 #include "economy/fleet.h"
 #include "economy/portdock.h"
@@ -34,19 +35,18 @@
 #include "economy/ware_instance.h"
 #include "economy/warehousesupply.h"
 #include "economy/wares_queue.h"
-#include "logic/battle.h"
-#include "logic/carrier.h"
 #include "logic/editor_game_base.h"
-#include "logic/expedition_bootstrap.h"
 #include "logic/findbob.h"
 #include "logic/findnode.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/battle.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/requirements.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/message_queue.h"
 #include "logic/player.h"
-#include "logic/requirements.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/worker.h"
 
 namespace Widelands {
 

=== renamed file 'src/logic/warehouse.h' => 'src/logic/map_objects/tribes/warehouse.h'
--- src/logic/warehouse.h	2015-11-14 09:37:10 +0000
+++ src/logic/map_objects/tribes/warehouse.h	2015-12-11 20:19:40 +0000
@@ -17,16 +17,16 @@
  *
  */
 
-#ifndef WL_LOGIC_WAREHOUSE_H
-#define WL_LOGIC_WAREHOUSE_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_WAREHOUSE_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_WAREHOUSE_H
 
 #include "base/macros.h"
 #include "base/wexception.h"
 #include "economy/request.h"
-#include "logic/attackable.h"
-#include "logic/building.h"
-#include "logic/soldiercontrol.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/attackable.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/soldiercontrol.h"
+#include "logic/map_objects/tribes/wareworker.h"
 
 class InteractivePlayer;
 
@@ -282,4 +282,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_WAREHOUSE_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_WAREHOUSE_H

=== renamed file 'src/logic/warelist.cc' => 'src/logic/map_objects/tribes/warelist.cc'
--- src/logic/warelist.cc	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/warelist.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/warelist.h"
+#include "logic/map_objects/tribes/warelist.h"
 
 #include "base/log.h"
 

=== renamed file 'src/logic/warelist.h' => 'src/logic/map_objects/tribes/warelist.h'
--- src/logic/warelist.h	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/warelist.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_WARELIST_H
-#define WL_LOGIC_WARELIST_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_WARELIST_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_WARELIST_H
 
 #include <cassert>
 #include <vector>
@@ -68,4 +68,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_WARELIST_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_WARELIST_H

=== renamed file 'src/logic/wareworker.h' => 'src/logic/map_objects/tribes/wareworker.h'
--- src/logic/wareworker.h	2014-07-05 16:41:51 +0000
+++ src/logic/map_objects/tribes/wareworker.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_WAREWORKER_H
-#define WL_LOGIC_WAREWORKER_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_WAREWORKER_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_WAREWORKER_H
 
 namespace Widelands {
 
@@ -35,4 +35,4 @@
 
 } // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_WAREWORKER_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_WAREWORKER_H

=== renamed file 'src/logic/workarea_info.h' => 'src/logic/map_objects/tribes/workarea_info.h'
--- src/logic/workarea_info.h	2014-09-14 11:31:58 +0000
+++ src/logic/map_objects/tribes/workarea_info.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_WORKAREA_INFO_H
-#define WL_LOGIC_WORKAREA_INFO_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_WORKAREA_INFO_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_WORKAREA_INFO_H
 
 #include <cstring>
 #include <map>
@@ -30,4 +30,4 @@
 //  activity (or similar) that can be performed within the radius.
 using WorkareaInfo = std::map<uint32_t, std::set<std::string>>;
 
-#endif  // end of include guard: WL_LOGIC_WORKAREA_INFO_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_WORKAREA_INFO_H

=== renamed file 'src/logic/worker.cc' => 'src/logic/map_objects/tribes/worker.cc'
--- src/logic/worker.cc	2015-12-05 10:59:02 +0000
+++ src/logic/map_objects/tribes/worker.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/worker.h"
 
 #include <iterator>
 #include <memory>
@@ -36,28 +36,28 @@
 #include "helper.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/carrier.h"
-#include "logic/checkstep.h"
 #include "logic/cmd_incorporate.h"
-#include "logic/critter.h"
-#include "logic/dismantlesite.h"
 #include "logic/findbob.h"
 #include "logic/findimmovable.h"
 #include "logic/findnode.h"
 #include "logic/game.h"
 #include "logic/game_controller.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/terrain_affinity.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/dismantlesite.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker_program.h"
+#include "logic/map_objects/world/critter.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/terrain_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapfringeregion.h"
 #include "logic/message_queue.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
-#include "logic/terrain_affinity.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
-#include "logic/worker_program.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/terrain_description.h"
-#include "logic/world/world.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 #include "map_io/tribes_legacy_lookup_table.h"

=== renamed file 'src/logic/worker.h' => 'src/logic/map_objects/tribes/worker.h'
--- src/logic/worker.h	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/worker.h	2015-12-11 20:19:40 +0000
@@ -17,15 +17,15 @@
  *
  */
 
-#ifndef WL_LOGIC_WORKER_H
-#define WL_LOGIC_WORKER_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_WORKER_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_WORKER_H
 
 #include "economy/idleworkersupply.h"
 #include "economy/portdock.h"
 #include "economy/transfer.h"
 #include "economy/ware_instance.h"
-#include "logic/productionsite.h"
-#include "logic/worker_descr.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/worker_descr.h"
 #include "map_io/tribes_legacy_lookup_table.h"
 
 namespace Widelands {
@@ -284,4 +284,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_WORKER_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_WORKER_H

=== renamed file 'src/logic/worker_descr.cc' => 'src/logic/map_objects/tribes/worker_descr.cc'
--- src/logic/worker_descr.cc	2015-11-21 11:47:05 +0000
+++ src/logic/map_objects/tribes/worker_descr.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/worker_descr.h"
+#include "logic/map_objects/tribes/worker_descr.h"
 
 #include <memory>
 
@@ -25,13 +25,13 @@
 #include "base/point.h"
 #include "base/wexception.h"
 #include "graphic/graphic.h"
-#include "logic/carrier.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker.h"
+#include "logic/map_objects/tribes/worker_program.h"
 #include "logic/nodecaps.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/worker.h"
-#include "logic/worker_program.h"
 #include "sound/sound_handler.h"
 
 namespace Widelands {

=== renamed file 'src/logic/worker_descr.h' => 'src/logic/map_objects/tribes/worker_descr.h'
--- src/logic/worker_descr.h	2015-11-21 11:47:05 +0000
+++ src/logic/map_objects/tribes/worker_descr.h	2015-12-11 20:19:40 +0000
@@ -17,15 +17,15 @@
  *
  */
 
-#ifndef WL_LOGIC_WORKER_DESCR_H
-#define WL_LOGIC_WORKER_DESCR_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_WORKER_DESCR_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_WORKER_DESCR_H
 
 #include <memory>
 
 #include "base/macros.h"
-#include "logic/bob.h"
+#include "logic/map_objects/bob.h"
 #include "graphic/diranimations.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/immovable.h"
 #include "scripting/lua_table.h"
 
 class Image;
@@ -130,4 +130,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_WORKER_DESCR_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_WORKER_DESCR_H

=== renamed file 'src/logic/worker_program.cc' => 'src/logic/map_objects/tribes/worker_program.cc'
--- src/logic/worker_program.cc	2015-11-11 09:52:55 +0000
+++ src/logic/map_objects/tribes/worker_program.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/worker_program.h"
+#include "logic/map_objects/tribes/worker_program.h"
 
 #include <memory>
 #include <string>

=== renamed file 'src/logic/worker_program.h' => 'src/logic/map_objects/tribes/worker_program.h'
--- src/logic/worker_program.h	2015-10-18 14:16:50 +0000
+++ src/logic/map_objects/tribes/worker_program.h	2015-12-11 20:19:40 +0000
@@ -17,16 +17,16 @@
  *
  */
 
-#ifndef WL_LOGIC_WORKER_PROGRAM_H
-#define WL_LOGIC_WORKER_PROGRAM_H
+#ifndef WL_LOGIC_MAP_OBJECTS_TRIBES_WORKER_PROGRAM_H
+#define WL_LOGIC_MAP_OBJECTS_TRIBES_WORKER_PROGRAM_H
 
 #include <memory>
 
 #include "base/macros.h"
-#include "logic/bob.h"
-#include "logic/tribes/tribes.h"
-#include "logic/workarea_info.h"
-#include "logic/worker.h"
+#include "logic/map_objects/bob.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/tribes/workarea_info.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "scripting/lua_table.h"
 
 namespace Widelands {
@@ -96,4 +96,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_WORKER_PROGRAM_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_TRIBES_WORKER_PROGRAM_H

=== renamed file 'src/logic/walkingdir.cc' => 'src/logic/map_objects/walkingdir.cc'
--- src/logic/walkingdir.cc	2015-04-07 06:49:51 +0000
+++ src/logic/map_objects/walkingdir.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/walkingdir.h"
+#include "logic/map_objects/walkingdir.h"
 
 namespace Widelands {
 

=== renamed file 'src/logic/walkingdir.h' => 'src/logic/map_objects/walkingdir.h'
--- src/logic/walkingdir.h	2015-04-07 06:49:51 +0000
+++ src/logic/map_objects/walkingdir.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_WALKINGDIR_H
-#define WL_LOGIC_WALKINGDIR_H
+#ifndef WL_LOGIC_MAP_OBJECTS_WALKINGDIR_H
+#define WL_LOGIC_MAP_OBJECTS_WALKINGDIR_H
 
 #include <stdint.h>
 
@@ -43,4 +43,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_WALKINGDIR_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_WALKINGDIR_H

=== renamed directory 'src/logic/world' => 'src/logic/map_objects/world'
=== renamed file 'src/logic/critter.cc' => 'src/logic/map_objects/world/critter.cc'
--- src/logic/critter.cc	2015-10-25 08:06:00 +0000
+++ src/logic/map_objects/world/critter.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/critter.h"
+#include "logic/map_objects/world/critter.h"
 
 #include <cstdio>
 #include <memory>
@@ -31,12 +31,12 @@
 #include "helper.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/critter_program.h"
 #include "logic/field.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/world/critter_program.h"
+#include "logic/map_objects/world/world.h"
 #include "map_io/world_legacy_lookup_table.h"
 #include "scripting/lua_table.h"
 

=== renamed file 'src/logic/critter.h' => 'src/logic/map_objects/world/critter.h'
--- src/logic/critter.h	2015-09-18 18:17:01 +0000
+++ src/logic/map_objects/world/critter.h	2015-12-11 20:19:40 +0000
@@ -17,11 +17,11 @@
  *
  */
 
-#ifndef WL_LOGIC_CRITTER_H
-#define WL_LOGIC_CRITTER_H
+#ifndef WL_LOGIC_MAP_OBJECTS_WORLD_CRITTER_H
+#define WL_LOGIC_MAP_OBJECTS_WORLD_CRITTER_H
 
 #include "base/macros.h"
-#include "logic/bob.h"
+#include "logic/map_objects/bob.h"
 #include "graphic/diranimations.h"
 
 class LuaTable;
@@ -94,4 +94,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_CRITTER_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_WORLD_CRITTER_H

=== renamed file 'src/logic/critter_program.h' => 'src/logic/map_objects/world/critter_program.h'
--- src/logic/critter_program.h	2014-09-14 14:36:56 +0000
+++ src/logic/map_objects/world/critter_program.h	2015-12-11 20:19:40 +0000
@@ -17,10 +17,10 @@
  *
  */
 
-#ifndef WL_LOGIC_CRITTER_PROGRAM_H
-#define WL_LOGIC_CRITTER_PROGRAM_H
+#ifndef WL_LOGIC_MAP_OBJECTS_WORLD_CRITTER_PROGRAM_H
+#define WL_LOGIC_MAP_OBJECTS_WORLD_CRITTER_PROGRAM_H
 
-#include "logic/bob.h"
+#include "logic/map_objects/bob.h"
 
 namespace Widelands {
 
@@ -62,4 +62,4 @@
 
 }
 
-#endif  // end of include guard: WL_LOGIC_CRITTER_PROGRAM_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_WORLD_CRITTER_PROGRAM_H

=== modified file 'src/logic/map_objects/world/editor_category.cc'
--- src/logic/world/editor_category.cc	2015-03-01 09:21:20 +0000
+++ src/logic/map_objects/world/editor_category.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/world/editor_category.h"
+#include "logic/map_objects/world/editor_category.h"
 
 #include "graphic/graphic.h"
 #include "io/filesystem/layered_filesystem.h"

=== modified file 'src/logic/map_objects/world/editor_category.h'
--- src/logic/world/editor_category.h	2015-03-01 09:21:20 +0000
+++ src/logic/map_objects/world/editor_category.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_WORLD_EDITOR_CATEGORY_H
-#define WL_LOGIC_WORLD_EDITOR_CATEGORY_H
+#ifndef WL_LOGIC_MAP_OBJECTS_WORLD_EDITOR_CATEGORY_H
+#define WL_LOGIC_MAP_OBJECTS_WORLD_EDITOR_CATEGORY_H
 
 #include <string>
 
@@ -53,4 +53,4 @@
 
 }  // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_WORLD_EDITOR_CATEGORY_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_WORLD_EDITOR_CATEGORY_H

=== modified file 'src/logic/map_objects/world/map_gen.cc'
--- src/logic/world/map_gen.cc	2015-11-11 09:54:53 +0000
+++ src/logic/map_objects/world/map_gen.cc	2015-12-11 20:19:40 +0000
@@ -17,14 +17,14 @@
  *
  */
 
-#include "logic/world/map_gen.h"
+#include "logic/map_objects/world/map_gen.h"
 
 #include <memory>
 #include <string>
 #include <vector>
 
 #include "logic/game_data_error.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/world.h"
 #include "scripting/lua_table.h"
 
 namespace Widelands {

=== modified file 'src/logic/map_objects/world/map_gen.h'
--- src/logic/world/map_gen.h	2015-11-11 09:54:53 +0000
+++ src/logic/map_objects/world/map_gen.h	2015-12-11 20:19:40 +0000
@@ -17,14 +17,14 @@
  *
  */
 
-#ifndef WL_LOGIC_WORLD_MAP_GEN_H
-#define WL_LOGIC_WORLD_MAP_GEN_H
+#ifndef WL_LOGIC_MAP_OBJECTS_WORLD_MAP_GEN_H
+#define WL_LOGIC_MAP_OBJECTS_WORLD_MAP_GEN_H
 
 #include <map>
 #include <string>
 #include <vector>
 
-#include "logic/world/terrain_description.h"
+#include "logic/map_objects/world/terrain_description.h"
 
 class LuaTable;
 
@@ -173,4 +173,4 @@
 
 }  // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_WORLD_MAP_GEN_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_WORLD_MAP_GEN_H

=== modified file 'src/logic/map_objects/world/resource_description.cc'
--- src/logic/world/resource_description.cc	2015-03-30 15:44:20 +0000
+++ src/logic/map_objects/world/resource_description.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/world/resource_description.h"
+#include "logic/map_objects/world/resource_description.h"
 
 #include <memory>
 

=== modified file 'src/logic/map_objects/world/resource_description.h'
--- src/logic/world/resource_description.h	2015-03-01 09:21:20 +0000
+++ src/logic/map_objects/world/resource_description.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_WORLD_RESOURCE_DESCRIPTION_H
-#define WL_LOGIC_WORLD_RESOURCE_DESCRIPTION_H
+#ifndef WL_LOGIC_MAP_OBJECTS_WORLD_RESOURCE_DESCRIPTION_H
+#define WL_LOGIC_MAP_OBJECTS_WORLD_RESOURCE_DESCRIPTION_H
 
 #include <string>
 #include <vector>
@@ -67,4 +67,4 @@
 
 }  // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_WORLD_RESOURCE_DESCRIPTION_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_WORLD_RESOURCE_DESCRIPTION_H

=== modified file 'src/logic/map_objects/world/terrain_description.cc'
--- src/logic/world/terrain_description.cc	2015-12-10 17:20:15 +0000
+++ src/logic/map_objects/world/terrain_description.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/world/terrain_description.h"
+#include "logic/map_objects/world/terrain_description.h"
 
 #include <memory>
 
@@ -28,8 +28,8 @@
 #include "graphic/graphic.h"
 #include "graphic/texture.h"
 #include "logic/game_data_error.h"
-#include "logic/world/editor_category.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/editor_category.h"
+#include "logic/map_objects/world/world.h"
 #include "scripting/lua_table.h"
 
 namespace Widelands {

=== modified file 'src/logic/map_objects/world/terrain_description.h'
--- src/logic/world/terrain_description.h	2015-12-10 20:52:30 +0000
+++ src/logic/map_objects/world/terrain_description.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_WORLD_TERRAIN_DESCRIPTION_H
-#define WL_LOGIC_WORLD_TERRAIN_DESCRIPTION_H
+#ifndef WL_LOGIC_MAP_OBJECTS_WORLD_TERRAIN_DESCRIPTION_H
+#define WL_LOGIC_MAP_OBJECTS_WORLD_TERRAIN_DESCRIPTION_H
 
 #include <memory>
 #include <string>
@@ -28,7 +28,7 @@
 #include "graphic/color.h"
 #include "graphic/graphic.h"
 #include "logic/widelands.h"
-#include "logic/world/resource_description.h"
+#include "logic/map_objects/world/resource_description.h"
 
 class LuaTable;
 class Texture;
@@ -148,4 +148,4 @@
 
 }  // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_WORLD_TERRAIN_DESCRIPTION_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_WORLD_TERRAIN_DESCRIPTION_H

=== modified file 'src/logic/map_objects/world/world.cc'
--- src/logic/world/world.cc	2015-11-11 10:03:41 +0000
+++ src/logic/map_objects/world/world.cc	2015-12-11 20:19:40 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "logic/world/world.h"
+#include "logic/map_objects/world/world.h"
 
 #include <memory>
 
@@ -25,13 +25,13 @@
 #include "graphic/image_io.h"
 #include "graphic/texture.h"
 #include "graphic/texture_atlas.h"
-#include "logic/bob.h"
-#include "logic/critter.h"
 #include "logic/game_data_error.h"
-#include "logic/immovable.h"
-#include "logic/world/editor_category.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/terrain_description.h"
+#include "logic/map_objects/bob.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/world/critter.h"
+#include "logic/map_objects/world/editor_category.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/terrain_description.h"
 #include "scripting/lua_table.h"
 
 namespace Widelands {

=== modified file 'src/logic/map_objects/world/world.h'
--- src/logic/world/world.h	2015-11-11 10:03:41 +0000
+++ src/logic/map_objects/world/world.h	2015-12-11 20:19:40 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#ifndef WL_LOGIC_WORLD_WORLD_H
-#define WL_LOGIC_WORLD_WORLD_H
+#ifndef WL_LOGIC_MAP_OBJECTS_WORLD_WORLD_H
+#define WL_LOGIC_MAP_OBJECTS_WORLD_WORLD_H
 
 #include <memory>
 
@@ -106,4 +106,4 @@
 
 }  // namespace Widelands
 
-#endif  // end of include guard: WL_LOGIC_WORLD_WORLD_H
+#endif  // end of include guard: WL_LOGIC_MAP_OBJECTS_WORLD_WORLD_H

=== modified file 'src/logic/mapastar.cc'
--- src/logic/mapastar.cc	2014-03-09 16:49:10 +0000
+++ src/logic/mapastar.cc	2015-12-11 20:19:40 +0000
@@ -19,7 +19,7 @@
 
 #include "logic/mapastar.h"
 
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/path.h"
 
 namespace Widelands {

=== modified file 'src/logic/path.cc'
--- src/logic/path.cc	2015-10-24 15:42:37 +0000
+++ src/logic/path.cc	2015-12-11 20:19:40 +0000
@@ -24,8 +24,8 @@
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game_data_error.h"
-#include "logic/instances.h"
 #include "logic/map.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/widelands_geometry_io.h"
 
 namespace Widelands {

=== modified file 'src/logic/player.cc'
--- src/logic/player.cc	2015-11-21 11:34:10 +0000
+++ src/logic/player.cc	2015-12-11 20:19:40 +0000
@@ -34,22 +34,22 @@
 #include "economy/road.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/building.h"
-#include "logic/checkstep.h"
 #include "logic/cmd_delete_message.h"
 #include "logic/cmd_luacoroutine.h"
 #include "logic/constants.h"
-#include "logic/constructionsite.h"
 #include "logic/findimmovable.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
-#include "logic/militarysite.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/soldiercontrol.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/playercommand.h"
-#include "logic/soldier.h"
-#include "logic/soldiercontrol.h"
-#include "logic/trainingsite.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
 #include "scripting/lua_table.h"
 #include "sound/sound_handler.h"
 #include "wui/interactive_player.h"

=== modified file 'src/logic/player.h'
--- src/logic/player.h	2015-11-11 09:53:54 +0000
+++ src/logic/player.h	2015-12-11 20:19:40 +0000
@@ -24,14 +24,14 @@
 
 #include "base/macros.h"
 #include "graphic/color.h"
-#include "logic/building.h"
 #include "logic/constants.h"
-#include "logic/constructionsite.h"
 #include "logic/editor_game_base.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/mapregion.h"
 #include "logic/message_queue.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
 #include "logic/widelands.h"
 
 // there are three arrays to be used by AI

=== modified file 'src/logic/playercommand.cc'
--- src/logic/playercommand.cc	2015-11-27 12:46:45 +0000
+++ src/logic/playercommand.cc	2015-12-11 20:19:40 +0000
@@ -28,12 +28,12 @@
 #include "io/filewrite.h"
 #include "io/streamwrite.h"
 #include "logic/game.h"
-#include "logic/instances.h"
-#include "logic/militarysite.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/ship.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
 #include "logic/widelands_geometry_io.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"

=== modified file 'src/logic/playercommand.h'
--- src/logic/playercommand.h	2015-11-27 12:46:45 +0000
+++ src/logic/playercommand.h	2015-12-11 20:19:40 +0000
@@ -26,10 +26,10 @@
 #include "economy/flag.h"
 #include "logic/message_id.h"
 #include "logic/path.h"
-#include "logic/ship.h"
-#include "logic/trainingsite.h"
-#include "logic/warehouse.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/queue_cmd_factory.cc'
--- src/logic/queue_cmd_factory.cc	2015-11-29 10:11:51 +0000
+++ src/logic/queue_cmd_factory.cc	2015-12-11 20:19:40 +0000
@@ -25,7 +25,7 @@
 #include "logic/cmd_incorporate.h"
 #include "logic/cmd_luacoroutine.h"
 #include "logic/cmd_luascript.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/playercommand.h"
 
 namespace Widelands {

=== modified file 'src/logic/single_player_game_settings_provider.cc'
--- src/logic/single_player_game_settings_provider.cc	2015-03-30 15:44:20 +0000
+++ src/logic/single_player_game_settings_provider.cc	2015-12-11 20:19:40 +0000
@@ -22,7 +22,7 @@
 #include <boost/format.hpp>
 
 #include "ai/computer_player.h"
-#include "logic/tribes/tribes.h"
+#include "logic/map_objects/tribes/tribes.h"
 
 
 SinglePlayerGameSettingsProvider::SinglePlayerGameSettingsProvider() {

=== removed file 'src/logic/soldier_counts.h'
--- src/logic/soldier_counts.h	2014-09-14 11:31:58 +0000
+++ src/logic/soldier_counts.h	1970-01-01 00:00:00 +0000
@@ -1,31 +0,0 @@
-/*
- * Copyright (C) 2008 by the Widelands Development Team
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- *
- */
-
-#ifndef WL_LOGIC_SOLDIER_COUNTS_H
-#define WL_LOGIC_SOLDIER_COUNTS_H
-
-#include <map>
-
-#include "logic/widelands.h"
-
-namespace Widelands {
-using SoldierCounts = std::map<SoldierStrength, uint32_t>;
-}
-
-#endif  // end of include guard: WL_LOGIC_SOLDIER_COUNTS_H

=== modified file 'src/map_io/map_allowed_building_types_packet.cc'
--- src/map_io/map_allowed_building_types_packet.cc	2015-11-11 09:53:54 +0000
+++ src/map_io/map_allowed_building_types_packet.cc	2015-12-11 20:19:40 +0000
@@ -24,8 +24,8 @@
 #include "base/macros.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "profile/profile.h"
 
 namespace Widelands {

=== modified file 'src/map_io/map_allowed_worker_types_packet.cc'
--- src/map_io/map_allowed_worker_types_packet.cc	2015-11-11 09:52:55 +0000
+++ src/map_io/map_allowed_worker_types_packet.cc	2015-12-11 20:19:40 +0000
@@ -24,8 +24,8 @@
 #include "base/macros.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "profile/profile.h"
 
 namespace Widelands {

=== modified file 'src/map_io/map_bob_packet.cc'
--- src/map_io/map_bob_packet.cc	2015-11-11 10:03:41 +0000
+++ src/map_io/map_bob_packet.cc	2015-12-11 20:19:40 +0000
@@ -20,9 +20,9 @@
 #include "map_io/map_bob_packet.h"
 
 #include "io/fileread.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/world/world.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 #include "map_io/world_legacy_lookup_table.h"

=== modified file 'src/map_io/map_building_packet.cc'
--- src/map_io/map_building_packet.cc	2015-11-11 09:53:54 +0000
+++ src/map_io/map_building_packet.cc	2015-12-11 20:19:40 +0000
@@ -26,11 +26,11 @@
 #include "graphic/graphic.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/constructionsite.h"
 #include "logic/editor_game_base.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 #include "wui/interactive_base.h"

=== modified file 'src/map_io/map_buildingdata_packet.cc'
--- src/map_io/map_buildingdata_packet.cc	2015-11-11 09:53:54 +0000
+++ src/map_io/map_buildingdata_packet.cc	2015-12-11 20:19:40 +0000
@@ -23,6 +23,7 @@
 #include <memory>
 
 #include "base/macros.h"
+#include "economy/expedition_bootstrap.h"
 #include "economy/flag.h"
 #include "economy/portdock.h"
 #include "economy/request.h"
@@ -30,22 +31,21 @@
 #include "economy/wares_queue.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/constructionsite.h"
-#include "logic/dismantlesite.h"
 #include "logic/editor_game_base.h"
-#include "logic/expedition_bootstrap.h"
 #include "logic/game.h"
 #include "logic/map.h"
-#include "logic/militarysite.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/dismantlesite.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/production_program.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/production_program.h"
-#include "logic/productionsite.h"
-#include "logic/soldier.h"
-#include "logic/trainingsite.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
 #include "logic/widelands_geometry_io.h"
-#include "logic/worker.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== modified file 'src/map_io/map_flagdata_packet.cc'
--- src/map_io/map_flagdata_packet.cc	2015-10-24 15:42:37 +0000
+++ src/map_io/map_flagdata_packet.cc	2015-12-11 20:19:40 +0000
@@ -27,12 +27,12 @@
 #include "economy/ware_instance.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/building.h"
 #include "logic/game.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
 #include "logic/widelands_geometry_io.h"
-#include "logic/worker.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== modified file 'src/map_io/map_heights_packet.cc'
--- src/map_io/map_heights_packet.cc	2015-10-24 15:42:37 +0000
+++ src/map_io/map_heights_packet.cc	2015-12-11 20:19:40 +0000
@@ -24,7 +24,7 @@
 #include "logic/editor_game_base.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/world.h"
 
 namespace Widelands {
 

=== modified file 'src/map_io/map_node_ownership_packet.cc'
--- src/map_io/map_node_ownership_packet.cc	2015-10-24 15:42:37 +0000
+++ src/map_io/map_node_ownership_packet.cc	2015-12-11 20:19:40 +0000
@@ -24,7 +24,7 @@
 #include "logic/editor_game_base.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/world.h"
 
 namespace Widelands {
 

=== modified file 'src/map_io/map_object_loader.cc'
--- src/map_io/map_object_loader.cc	2014-09-10 07:57:29 +0000
+++ src/map_io/map_object_loader.cc	2015-12-11 20:19:40 +0000
@@ -21,7 +21,7 @@
 
 #include "base/wexception.h"
 #include "logic/editor_game_base.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 
 namespace Widelands {
 

=== modified file 'src/map_io/map_object_loader.h'
--- src/map_io/map_object_loader.h	2014-09-14 11:31:58 +0000
+++ src/map_io/map_object_loader.h	2015-12-11 20:19:40 +0000
@@ -27,7 +27,7 @@
 
 #include "base/macros.h"
 #include "logic/game_data_error.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/widelands.h"
 
 

=== modified file 'src/map_io/map_object_packet.cc'
--- src/map_io/map_object_packet.cc	2015-10-25 08:06:00 +0000
+++ src/map_io/map_object_packet.cc	2015-12-11 20:19:40 +0000
@@ -24,13 +24,13 @@
 #include "economy/portdock.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/battle.h"
-#include "logic/critter.h"
 #include "logic/editor_game_base.h"
-#include "logic/immovable.h"
 #include "logic/map.h"
-#include "logic/ship.h"
-#include "logic/worker.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/battle.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/worker.h"
+#include "logic/map_objects/world/critter.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"
 

=== modified file 'src/map_io/map_object_packet.h'
--- src/map_io/map_object_packet.h	2015-09-18 18:17:01 +0000
+++ src/map_io/map_object_packet.h	2015-12-11 20:19:40 +0000
@@ -22,7 +22,7 @@
 
 #include <set>
 
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 
 class FileSystem;
 class WorldLegacyLookupTable;

=== modified file 'src/map_io/map_object_saver.cc'
--- src/map_io/map_object_saver.cc	2014-11-28 16:40:55 +0000
+++ src/map_io/map_object_saver.cc	2015-12-11 20:19:40 +0000
@@ -25,10 +25,10 @@
 #include "economy/portdock.h"
 #include "economy/road.h"
 #include "economy/ware_instance.h"
-#include "logic/battle.h"
-#include "logic/bob.h"
-#include "logic/building.h"
-#include "logic/ware_descr.h"
+#include "logic/map_objects/bob.h"
+#include "logic/map_objects/tribes/battle.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/ware_descr.h"
 
 namespace Widelands {
 

=== modified file 'src/map_io/map_player_names_and_tribes_packet.cc'
--- src/map_io/map_player_names_and_tribes_packet.cc	2015-10-24 15:42:37 +0000
+++ src/map_io/map_player_names_and_tribes_packet.cc	2015-12-11 20:19:40 +0000
@@ -24,7 +24,7 @@
 #include "logic/editor_game_base.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/world.h"
 #include "profile/profile.h"
 
 namespace Widelands {

=== modified file 'src/map_io/map_players_view_packet.cc'
--- src/map_io/map_players_view_packet.cc	2015-11-14 13:18:24 +0000
+++ src/map_io/map_players_view_packet.cc	2015-12-11 20:19:40 +0000
@@ -33,10 +33,9 @@
 #include "logic/editor_game_base.h"
 #include "logic/field.h"
 #include "logic/game_data_error.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/world/world.h"
-
 
 namespace Widelands {
 

=== modified file 'src/map_io/map_resources_packet.cc'
--- src/map_io/map_resources_packet.cc	2015-10-25 08:06:00 +0000
+++ src/map_io/map_resources_packet.cc	2015-12-11 20:19:40 +0000
@@ -25,8 +25,8 @@
 #include "logic/editor_game_base.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/world.h"
 #include "map_io/world_legacy_lookup_table.h"
 
 namespace Widelands {

=== modified file 'src/map_io/map_roaddata_packet.cc'
--- src/map_io/map_roaddata_packet.cc	2015-10-25 08:06:00 +0000
+++ src/map_io/map_roaddata_packet.cc	2015-12-11 20:19:40 +0000
@@ -27,12 +27,12 @@
 #include "economy/road.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/carrier.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "logic/widelands_geometry_io.h"
 #include "map_io/map_object_loader.h"
 #include "map_io/map_object_saver.h"

=== modified file 'src/map_io/map_saver.cc'
--- src/map_io/map_saver.cc	2015-11-11 09:53:54 +0000
+++ src/map_io/map_saver.cc	2015-12-11 20:19:40 +0000
@@ -31,8 +31,8 @@
 #include "io/filewrite.h"
 #include "logic/editor_game_base.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "map_io/map_allowed_building_types_packet.h"
 #include "map_io/map_allowed_worker_types_packet.h"
 #include "map_io/map_building_packet.h"

=== modified file 'src/map_io/map_scripting_packet.cc'
--- src/map_io/map_scripting_packet.cc	2015-11-01 10:11:56 +0000
+++ src/map_io/map_scripting_packet.cc	2015-12-11 20:19:40 +0000
@@ -31,7 +31,7 @@
 #include "logic/game.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/world.h"
 #include "scripting/logic.h"
 
 namespace Widelands {

=== modified file 'src/map_io/map_terrain_packet.cc'
--- src/map_io/map_terrain_packet.cc	2015-11-11 09:54:53 +0000
+++ src/map_io/map_terrain_packet.cc	2015-12-11 20:19:40 +0000
@@ -27,8 +27,8 @@
 #include "logic/editor_game_base.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
-#include "logic/world/terrain_description.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/world/terrain_description.h"
+#include "logic/map_objects/world/world.h"
 #include "map_io/world_legacy_lookup_table.h"
 
 namespace Widelands {

=== modified file 'src/map_io/s2map.cc'
--- src/map_io/s2map.cc	2015-11-11 10:03:41 +0000
+++ src/map_io/s2map.cc	2015-12-11 20:19:40 +0000
@@ -33,10 +33,10 @@
 #include "logic/editor_game_base.h"
 #include "logic/field.h"
 #include "logic/game.h"
-#include "logic/instances.h"
 #include "logic/map.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/mapregion.h"
-#include "logic/world/world.h"
 #include "map_io/map_loader.h"
 #include "map_io/world_legacy_lookup_table.h"
 #include "scripting/lua_interface.h"

=== modified file 'src/map_io/widelands_map_loader.cc'
--- src/map_io/widelands_map_loader.cc	2015-09-18 18:17:01 +0000
+++ src/map_io/widelands_map_loader.cc	2015-12-11 20:19:40 +0000
@@ -27,8 +27,8 @@
 #include "io/filesystem/filesystem.h"
 #include "logic/editor_game_base.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "map_io/map_allowed_building_types_packet.h"
 #include "map_io/map_allowed_worker_types_packet.h"
 #include "map_io/map_bob_packet.h"

=== modified file 'src/network/netclient.cc'
--- src/network/netclient.cc	2015-11-20 19:09:59 +0000
+++ src/network/netclient.cc	2015-12-11 20:19:40 +0000
@@ -35,10 +35,10 @@
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/tribes.h"
 #include "logic/player.h"
 #include "logic/playercommand.h"
 #include "logic/playersmanager.h"
-#include "logic/tribes/tribes.h"
 #include "map_io/widelands_map_loader.h"
 #include "network/internet_gaming.h"
 #include "network/network_gaming_messages.h"

=== modified file 'src/network/nethost.cc'
--- src/network/nethost.cc	2015-11-20 19:09:59 +0000
+++ src/network/nethost.cc	2015-12-11 20:19:40 +0000
@@ -44,10 +44,10 @@
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/tribes.h"
 #include "logic/player.h"
 #include "logic/playercommand.h"
 #include "logic/playersmanager.h"
-#include "logic/tribes/tribes.h"
 #include "map_io/widelands_map_loader.h"
 #include "network/constants.h"
 #include "network/internet_gaming.h"

=== modified file 'src/network/network_player_settings_backend.cc'
--- src/network/network_player_settings_backend.cc	2015-11-01 10:11:56 +0000
+++ src/network/network_player_settings_backend.cc	2015-12-11 20:19:40 +0000
@@ -22,8 +22,8 @@
 #include "base/i18n.h"
 #include "base/log.h"
 #include "logic/game_settings.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 
 
 /// Toggle through the types

=== modified file 'src/profile/CMakeLists.txt'
--- src/profile/CMakeLists.txt	2014-07-03 19:26:30 +0000
+++ src/profile/CMakeLists.txt	2015-12-11 20:19:40 +0000
@@ -11,5 +11,4 @@
     build_info
     io_fileread
     io_filesystem
-    logic
  )

=== modified file 'src/profile/profile.cc'
--- src/profile/profile.cc	2015-02-23 18:47:22 +0000
+++ src/profile/profile.cc	2015-12-11 20:19:40 +0000
@@ -36,9 +36,7 @@
 #include "build_info.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/world/world.h"
+
 
 #define TRUE_WORDS 7
 static char const * trueWords[TRUE_WORDS] =

=== modified file 'src/scripting/lua_bases.cc'
--- src/scripting/lua_bases.cc	2015-11-11 09:53:54 +0000
+++ src/scripting/lua_bases.cc	2015-12-11 20:19:40 +0000
@@ -22,12 +22,12 @@
 #include <boost/format.hpp>
 
 #include "economy/economy.h"
-#include "logic/checkstep.h"
 #include "logic/constants.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/tribes/ware_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/tribes/tribes.h"
-#include "logic/ware_descr.h"
 #include "scripting/factory.h"
 #include "scripting/globals.h"
 #include "scripting/lua_map.h"

=== modified file 'src/scripting/lua_game.cc'
--- src/scripting/lua_game.cc	2015-11-21 11:34:10 +0000
+++ src/scripting/lua_game.cc	2015-12-11 20:19:40 +0000
@@ -28,12 +28,12 @@
 #include "logic/campaign_visibility.h"
 #include "logic/constants.h"
 #include "logic/game_controller.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/message.h"
 #include "logic/objective.h"
 #include "logic/path.h"
 #include "logic/player.h"
 #include "logic/playersmanager.h"
-#include "logic/tribes/tribe_descr.h"
 #include "scripting/globals.h"
 #include "scripting/lua_interface.h"
 #include "scripting/lua_map.h"

=== modified file 'src/scripting/lua_game.h'
--- src/scripting/lua_game.h	2015-11-21 11:34:10 +0000
+++ src/scripting/lua_game.h	2015-12-11 20:19:40 +0000
@@ -20,7 +20,7 @@
 #ifndef WL_SCRIPTING_LUA_GAME_H
 #define WL_SCRIPTING_LUA_GAME_H
 
-#include "logic/building.h"
+#include "logic/map_objects/tribes/building.h"
 #include "logic/message_id.h"
 #include "scripting/lua.h"
 #include "scripting/lua_bases.h"

=== modified file 'src/scripting/lua_map.cc'
--- src/scripting/lua_map.cc	2015-11-21 11:47:05 +0000
+++ src/scripting/lua_map.cc	2015-12-11 20:19:40 +0000
@@ -27,21 +27,21 @@
 #include "base/macros.h"
 #include "economy/wares_queue.h"
 #include "graphic/graphic.h"
-#include "logic/carrier.h"
-#include "logic/checkstep.h"
 #include "logic/findimmovable.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/carrier.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/tribes/warelist.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/terrain_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/maphollowregion.h"
 #include "logic/mapregion.h"
 #include "logic/player.h"
-#include "logic/ship.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribes.h"
-#include "logic/warelist.h"
 #include "logic/widelands_geometry.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/terrain_description.h"
-#include "logic/world/world.h"
 #include "scripting/factory.h"
 #include "scripting/globals.h"
 #include "scripting/lua_errors.h"

=== modified file 'src/scripting/lua_map.h'
--- src/scripting/lua_map.h	2015-11-03 12:12:02 +0000
+++ src/scripting/lua_map.h	2015-12-11 20:19:40 +0000
@@ -25,16 +25,16 @@
 #include "economy/flag.h"
 #include "economy/portdock.h"
 #include "economy/road.h"
-#include "logic/constructionsite.h"
-#include "logic/dismantlesite.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/dismantlesite.h"
 #include "logic/game.h"
-#include "logic/militarysite.h"
-#include "logic/productionsite.h"
-#include "logic/ship.h"
-#include "logic/soldier.h"
-#include "logic/trainingsite.h"
-#include "logic/warehouse.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/ship.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "scripting/lua.h"
 #include "scripting/luna.h"
 

=== modified file 'src/scripting/lua_root.cc'
--- src/scripting/lua_root.cc	2015-11-02 17:19:44 +0000
+++ src/scripting/lua_root.cc	2015-12-11 20:19:40 +0000
@@ -22,14 +22,14 @@
 #include <boost/format.hpp>
 
 #include "logic/cmd_luacoroutine.h"
-#include "logic/critter.h"
 #include "logic/findimmovable.h"
 #include "logic/game.h"
 #include "logic/game_controller.h"
-#include "logic/immovable.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/tribes/tribes.h"
-#include "logic/world/world.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/world/critter.h"
+#include "logic/map_objects/world/world.h"
 #include "scripting/globals.h"
 #include "scripting/lua_coroutine.h"
 #include "scripting/lua_editor.h"

=== modified file 'src/ui_fsmenu/launch_mpg.cc'
--- src/ui_fsmenu/launch_mpg.cc	2015-11-19 08:39:20 +0000
+++ src/ui_fsmenu/launch_mpg.cc	2015-12-11 20:19:40 +0000
@@ -32,8 +32,8 @@
 #include "logic/game.h"
 #include "logic/game_controller.h"
 #include "logic/game_settings.h"
-#include "logic/instances.h"
 #include "logic/map.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/player.h"
 #include "map_io/map_loader.h"
 #include "profile/profile.h"

=== modified file 'src/ui_fsmenu/launch_spg.cc'
--- src/ui_fsmenu/launch_spg.cc	2015-11-19 08:39:20 +0000
+++ src/ui_fsmenu/launch_spg.cc	2015-12-11 20:19:40 +0000
@@ -34,8 +34,8 @@
 #include "logic/game.h"
 #include "logic/game_controller.h"
 #include "logic/game_settings.h"
-#include "logic/instances.h"
 #include "logic/map.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/player.h"
 #include "map_io/map_loader.h"
 #include "scripting/lua_interface.h"

=== modified file 'src/wlapplication.cc'
--- src/wlapplication.cc	2015-11-08 17:31:06 +0000
+++ src/wlapplication.cc	2015-12-11 20:19:40 +0000
@@ -68,7 +68,6 @@
 #include "logic/replay_game_controller.h"
 #include "logic/single_player_game_controller.h"
 #include "logic/single_player_game_settings_provider.h"
-#include "logic/tribes/tribe_descr.h"
 #include "map_io/map_loader.h"
 #include "network/internet_gaming.h"
 #include "network/netclient.h"

=== modified file 'src/wui/actionconfirm.cc'
--- src/wui/actionconfirm.cc	2015-11-11 09:53:54 +0000
+++ src/wui/actionconfirm.cc	2015-12-11 20:19:40 +0000
@@ -24,9 +24,9 @@
 #include "base/macros.h"
 #include "economy/economy.h"
 #include "graphic/graphic.h"
-#include "logic/building.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/ship.h"
 #include "logic/player.h"
-#include "logic/ship.h"
 #include "ui_basic/multilinetextarea.h"
 #include "ui_basic/window.h"
 #include "wui/interactive_player.h"

=== modified file 'src/wui/attack_box.cc'
--- src/wui/attack_box.cc	2015-07-29 13:38:29 +0000
+++ src/wui/attack_box.cc	2015-12-11 20:19:40 +0000
@@ -29,7 +29,7 @@
 #include "graphic/graphic.h"
 #include "graphic/text/font_set.h"
 #include "graphic/text_constants.h"
-#include "logic/soldier.h"
+#include "logic/map_objects/tribes/soldier.h"
 
 constexpr int32_t kUpdateTimeInGametimeMs = 1000;  //  1 second, gametime
 

=== modified file 'src/wui/attack_box.h'
--- src/wui/attack_box.h	2015-07-29 13:38:29 +0000
+++ src/wui/attack_box.h	2015-12-11 20:19:40 +0000
@@ -26,10 +26,10 @@
 #include "graphic/font_handler1.h"
 #include "graphic/text/font_set.h"
 #include "graphic/text_constants.h"
-#include "logic/attackable.h"
-#include "logic/bob.h"
+#include "logic/map_objects/attackable.h"
+#include "logic/map_objects/bob.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
+#include "logic/map_objects/tribes/soldier.h"
 #include "ui_basic/box.h"
 #include "ui_basic/button.h"
 #include "ui_basic/slider.h"

=== modified file 'src/wui/building_statistics_menu.cc'
--- src/wui/building_statistics_menu.cc	2015-11-28 12:30:24 +0000
+++ src/wui/building_statistics_menu.cc	2015-12-11 20:19:40 +0000
@@ -26,10 +26,10 @@
 
 #include "base/i18n.h"
 #include "graphic/font_handler1.h"
-#include "logic/militarysite.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/tribes.h"
 #include "logic/player.h"
-#include "logic/productionsite.h"
-#include "logic/tribes/tribes.h"
 
 constexpr int kBuildGridCellHeight = 50;
 constexpr int kBuildGridCellWidth = 55;

=== modified file 'src/wui/building_statistics_menu.h'
--- src/wui/building_statistics_menu.h	2015-11-28 12:30:24 +0000
+++ src/wui/building_statistics_menu.h	2015-12-11 20:19:40 +0000
@@ -23,7 +23,7 @@
 #include <vector>
 
 #include "graphic/color.h"
-#include "logic/building.h"
+#include "logic/map_objects/tribes/building.h"
 #include "logic/widelands.h"
 #include "ui_basic/box.h"
 #include "ui_basic/button.h"

=== modified file 'src/wui/building_ui.cc'
--- src/wui/building_ui.cc	2014-09-10 13:03:40 +0000
+++ src/wui/building_ui.cc	2015-12-11 20:19:40 +0000
@@ -22,7 +22,7 @@
 #include <boost/lexical_cast.hpp>
 
 #include "base/macros.h"
-#include "logic/building.h"
+#include "logic/map_objects/tribes/building.h"
 #include "ui_basic/window.h"
 
 using Widelands::Building;

=== modified file 'src/wui/buildingwindow.cc'
--- src/wui/buildingwindow.cc	2015-11-14 09:37:10 +0000
+++ src/wui/buildingwindow.cc	2015-12-11 20:19:40 +0000
@@ -25,14 +25,14 @@
 #include "graphic/graphic.h"
 #include "graphic/image.h"
 #include "graphic/rendertarget.h"
-#include "logic/constructionsite.h"
-#include "logic/dismantlesite.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/dismantlesite.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/maphollowregion.h"
-#include "logic/militarysite.h"
 #include "logic/player.h"
-#include "logic/productionsite.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
 #include "ui_basic/tabpanel.h"
 #include "wui/actionconfirm.h"
 #include "wui/game_debug_ui.h"

=== modified file 'src/wui/constructionsitewindow.cc'
--- src/wui/constructionsitewindow.cc	2014-11-30 18:49:38 +0000
+++ src/wui/constructionsitewindow.cc	2015-12-11 20:19:40 +0000
@@ -23,7 +23,7 @@
 #include "wui/waresqueuedisplay.h"
 
 #include "graphic/graphic.h"
-#include "logic/constructionsite.h"
+#include "logic/map_objects/tribes/constructionsite.h"
 #include "ui_basic/progressbar.h"
 #include "ui_basic/tabpanel.h"
 

=== modified file 'src/wui/dismantlesitewindow.cc'
--- src/wui/dismantlesitewindow.cc	2014-11-30 18:49:38 +0000
+++ src/wui/dismantlesitewindow.cc	2015-12-11 20:19:40 +0000
@@ -19,7 +19,7 @@
 
 
 #include "graphic/graphic.h"
-#include "logic/dismantlesite.h"
+#include "logic/map_objects/tribes/dismantlesite.h"
 #include "ui_basic/progressbar.h"
 #include "ui_basic/tabpanel.h"
 #include "wui/buildingwindow.h"

=== modified file 'src/wui/encyclopedia_window.cc'
--- src/wui/encyclopedia_window.cc	2015-12-08 21:32:14 +0000
+++ src/wui/encyclopedia_window.cc	2015-12-11 20:19:40 +0000
@@ -32,12 +32,12 @@
 #include "base/i18n.h"
 #include "graphic/graphic.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "logic/building.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribes.h"
+#include "logic/map_objects/tribes/ware_descr.h"
+#include "logic/map_objects/tribes/worker_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/tribes/tribes.h"
-#include "logic/ware_descr.h"
-#include "logic/worker_descr.h"
 #include "scripting/lua_interface.h"
 #include "scripting/lua_table.h"
 #include "wui/interactive_player.h"

=== modified file 'src/wui/encyclopedia_window.h'
--- src/wui/encyclopedia_window.h	2015-11-21 11:47:05 +0000
+++ src/wui/encyclopedia_window.h	2015-12-11 20:19:40 +0000
@@ -23,8 +23,8 @@
 #include <map>
 #include <memory>
 
-#include "logic/instances.h"
-#include "logic/tribes/tribe_descr.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "ui_basic/box.h"
 #include "ui_basic/listselect.h"
 #include "ui_basic/multilinetextarea.h"

=== modified file 'src/wui/fieldaction.cc'
--- src/wui/fieldaction.cc	2015-11-27 14:29:39 +0000
+++ src/wui/fieldaction.cc	2015-12-11 20:19:40 +0000
@@ -25,13 +25,13 @@
 #include "economy/flag.h"
 #include "economy/road.h"
 #include "graphic/graphic.h"
-#include "logic/attackable.h"
 #include "logic/cmd_queue.h"
+#include "logic/map_objects/attackable.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/maphollowregion.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warehouse.h"
 #include "ui_basic/box.h"
 #include "ui_basic/button.h"
 #include "ui_basic/icongrid.h"

=== modified file 'src/wui/game_debug_ui.cc'
--- src/wui/game_debug_ui.cc	2015-11-11 09:56:22 +0000
+++ src/wui/game_debug_ui.cc	2015-12-11 20:19:40 +0000
@@ -27,14 +27,14 @@
 
 #include "base/i18n.h"
 #include "graphic/graphic.h"
-#include "logic/bob.h"
-#include "logic/building.h"
 #include "logic/field.h"
-#include "logic/instances.h"
 #include "logic/map.h"
+#include "logic/map_objects/bob.h"
+#include "logic/map_objects/map_object.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/world/resource_description.h"
+#include "logic/map_objects/world/world.h"
 #include "logic/player.h"
-#include "logic/world/resource_description.h"
-#include "logic/world/world.h"
 #include "ui_basic/button.h"
 #include "ui_basic/listselect.h"
 #include "ui_basic/multilinetextarea.h"

=== modified file 'src/wui/game_message_menu.cc'
--- src/wui/game_message_menu.cc	2015-09-11 06:24:02 +0000
+++ src/wui/game_message_menu.cc	2015-12-11 20:19:40 +0000
@@ -24,7 +24,7 @@
 
 #include "base/time_string.h"
 #include "graphic/graphic.h"
-#include "logic/instances.h"
+#include "logic/map_objects/map_object.h"
 #include "logic/message_queue.h"
 #include "logic/player.h"
 #include "logic/playercommand.h"

=== modified file 'src/wui/general_statistics_menu.cc'
--- src/wui/general_statistics_menu.cc	2015-03-30 15:44:20 +0000
+++ src/wui/general_statistics_menu.cc	2015-12-11 20:19:40 +0000
@@ -30,9 +30,9 @@
 #include "logic/constants.h"
 #include "logic/editor_game_base.h"
 #include "logic/game.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warelist.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warelist.h"
 #include "scripting/lua_interface.h"
 #include "scripting/lua_table.h"
 #include "ui_basic/button.h"

=== modified file 'src/wui/helpwindow.cc'
--- src/wui/helpwindow.cc	2015-11-21 11:47:05 +0000
+++ src/wui/helpwindow.cc	2015-12-11 20:19:40 +0000
@@ -25,7 +25,7 @@
 #include <boost/format.hpp>
 
 #include "base/i18n.h"
-#include "logic/building.h"
+#include "logic/map_objects/tribes/building.h"
 #include "scripting/lua_interface.h"
 #include "scripting/lua_table.h"
 

=== modified file 'src/wui/helpwindow.h'
--- src/wui/helpwindow.h	2015-11-06 18:57:00 +0000
+++ src/wui/helpwindow.h	2015-12-11 20:19:40 +0000
@@ -23,7 +23,7 @@
 #include <memory>
 
 #include "graphic/align.h"
-#include "logic/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "ui_basic/multilinetextarea.h"
 #include "ui_basic/unique_window.h"
 

=== modified file 'src/wui/interactive_base.cc'
--- src/wui/interactive_base.cc	2015-11-21 11:34:10 +0000
+++ src/wui/interactive_base.cc	2015-12-11 20:19:40 +0000
@@ -34,15 +34,15 @@
 #include "graphic/rendertarget.h"
 #include "graphic/text_constants.h"
 #include "graphic/text_layout.h"
-#include "logic/checkstep.h"
 #include "logic/cmd_queue.h"
 #include "logic/game.h"
 #include "logic/game_controller.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/checkstep.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/productionsite.h"
 #include "logic/maphollowregion.h"
 #include "logic/maptriangleregion.h"
 #include "logic/player.h"
-#include "logic/productionsite.h"
 #include "profile/profile.h"
 #include "scripting/lua_interface.h"
 #include "wlapplication.h"

=== modified file 'src/wui/interactive_gamebase.cc'
--- src/wui/interactive_gamebase.cc	2015-10-18 18:31:35 +0000
+++ src/wui/interactive_gamebase.cc	2015-12-11 20:19:40 +0000
@@ -30,8 +30,8 @@
 #include "logic/game.h"
 #include "logic/game_controller.h"
 #include "logic/map.h"
+#include "logic/map_objects/tribes/ship.h"
 #include "logic/player.h"
-#include "logic/ship.h"
 #include "profile/profile.h"
 #include "wui/game_summary.h"
 

=== modified file 'src/wui/interactive_player.cc'
--- src/wui/interactive_player.cc	2015-10-23 16:32:05 +0000
+++ src/wui/interactive_player.cc	2015-12-11 20:19:40 +0000
@@ -30,16 +30,16 @@
 #include "base/macros.h"
 #include "economy/flag.h"
 #include "game_io/game_loader.h"
-#include "logic/building.h"
 #include "logic/cmd_queue.h"
 #include "logic/constants.h"
-#include "logic/constructionsite.h"
-#include "logic/immovable.h"
+#include "logic/map_objects/immovable.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/productionsite.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/message_queue.h"
 #include "logic/player.h"
-#include "logic/productionsite.h"
-#include "logic/soldier.h"
-#include "logic/tribes/tribe_descr.h"
 #include "profile/profile.h"
 #include "ui_basic/unique_window.h"
 #include "wui/building_statistics_menu.h"

=== modified file 'src/wui/itemwaresdisplay.cc'
--- src/wui/itemwaresdisplay.cc	2015-11-11 09:52:55 +0000
+++ src/wui/itemwaresdisplay.cc	2015-12-11 20:19:40 +0000
@@ -20,8 +20,8 @@
 #include "wui/itemwaresdisplay.h"
 
 #include "graphic/rendertarget.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 
 namespace {
 

=== modified file 'src/wui/militarysitewindow.cc'
--- src/wui/militarysitewindow.cc	2014-11-30 18:49:38 +0000
+++ src/wui/militarysitewindow.cc	2015-12-11 20:19:40 +0000
@@ -18,7 +18,7 @@
  */
 
 #include "graphic/graphic.h"
-#include "logic/militarysite.h"
+#include "logic/map_objects/tribes/militarysite.h"
 #include "ui_basic/tabpanel.h"
 #include "wui/buildingwindow.h"
 #include "wui/soldiercapacitycontrol.h"

=== modified file 'src/wui/multiplayersetupgroup.cc'
--- src/wui/multiplayersetupgroup.cc	2015-12-06 11:15:52 +0000
+++ src/wui/multiplayersetupgroup.cc	2015-12-11 20:19:40 +0000
@@ -32,8 +32,8 @@
 #include "logic/constants.h"
 #include "logic/game.h"
 #include "logic/game_settings.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "ui_basic/button.h"
 #include "ui_basic/checkbox.h"
 #include "ui_basic/icon.h"

=== modified file 'src/wui/playerdescrgroup.cc'
--- src/wui/playerdescrgroup.cc	2015-12-06 11:15:52 +0000
+++ src/wui/playerdescrgroup.cc	2015-12-11 20:19:40 +0000
@@ -29,8 +29,8 @@
 #include "graphic/graphic.h"
 #include "graphic/text_constants.h"
 #include "logic/game_settings.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
 #include "ui_basic/button.h"
 #include "ui_basic/checkbox.h"
 #include "ui_basic/textarea.h"

=== modified file 'src/wui/portdockwaresdisplay.cc'
--- src/wui/portdockwaresdisplay.cc	2015-11-11 09:52:55 +0000
+++ src/wui/portdockwaresdisplay.cc	2015-12-11 20:19:40 +0000
@@ -21,8 +21,8 @@
 
 #include <boost/lexical_cast.hpp>
 
+#include "economy/expedition_bootstrap.h"
 #include "economy/portdock.h"
-#include "logic/expedition_bootstrap.h"
 #include "logic/player.h"
 #include "wui/waresdisplay.h"
 #include "wui/waresqueuedisplay.h"

=== modified file 'src/wui/productionsitewindow.cc'
--- src/wui/productionsitewindow.cc	2015-10-05 17:31:36 +0000
+++ src/wui/productionsitewindow.cc	2015-12-11 20:19:40 +0000
@@ -23,11 +23,11 @@
 
 #include "economy/request.h"
 #include "graphic/graphic.h"
-#include "logic/constructionsite.h"
-#include "logic/militarysite.h"
-#include "logic/trainingsite.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/worker.h"
+#include "logic/map_objects/tribes/constructionsite.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/trainingsite.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "ui_basic/listselect.h"
 #include "ui_basic/tabpanel.h"
 #include "ui_basic/textarea.h"

=== modified file 'src/wui/productionsitewindow.h'
--- src/wui/productionsitewindow.h	2014-11-30 18:49:38 +0000
+++ src/wui/productionsitewindow.h	2015-12-11 20:19:40 +0000
@@ -21,7 +21,7 @@
 #define WL_WUI_PRODUCTIONSITEWINDOW_H
 
 #include "wui/buildingwindow.h"
-#include "logic/productionsite.h"
+#include "logic/map_objects/tribes/productionsite.h"
 #include "ui_basic/table.h"
 
 struct ProductionSiteWindow : public BuildingWindow {

=== modified file 'src/wui/shipwindow.cc'
--- src/wui/shipwindow.cc	2015-04-07 06:49:51 +0000
+++ src/wui/shipwindow.cc	2015-12-11 20:19:40 +0000
@@ -17,15 +17,15 @@
  *
  */
 
-#include "logic/ship.h"
+#include "logic/map_objects/tribes/ship.h"
 
 #include "base/macros.h"
 #include "economy/portdock.h"
 #include "economy/ware_instance.h"
 #include "graphic/graphic.h"
+#include "logic/map_objects/tribes/warehouse.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/warehouse.h"
-#include "logic/worker.h"
 #include "ui_basic/box.h"
 #include "wui/actionconfirm.h"
 #include "wui/interactive_gamebase.h"

=== modified file 'src/wui/soldiercapacitycontrol.cc'
--- src/wui/soldiercapacitycontrol.cc	2014-11-22 10:18:20 +0000
+++ src/wui/soldiercapacitycontrol.cc	2015-12-11 20:19:40 +0000
@@ -20,8 +20,8 @@
 #include "wui/soldiercapacitycontrol.h"
 
 #include "graphic/graphic.h"
+#include "logic/map_objects/tribes/soldiercontrol.h"
 #include "logic/player.h"
-#include "logic/soldiercontrol.h"
 #include "ui_basic/button.h"
 #include "ui_basic/radiobutton.h"
 #include "wui/interactive_gamebase.h"

=== modified file 'src/wui/soldierlist.cc'
--- src/wui/soldierlist.cc	2015-11-08 17:31:06 +0000
+++ src/wui/soldierlist.cc	2015-12-11 20:19:40 +0000
@@ -26,11 +26,11 @@
 #include "graphic/font_handler1.h"
 #include "graphic/graphic.h"
 #include "graphic/rendertarget.h"
-#include "logic/building.h"
-#include "logic/militarysite.h"
+#include "logic/map_objects/tribes/building.h"
+#include "logic/map_objects/tribes/militarysite.h"
+#include "logic/map_objects/tribes/soldier.h"
+#include "logic/map_objects/tribes/soldiercontrol.h"
 #include "logic/player.h"
-#include "logic/soldier.h"
-#include "logic/soldiercontrol.h"
 #include "ui_basic/box.h"
 #include "ui_basic/button.h"
 #include "wlapplication.h"

=== modified file 'src/wui/stock_menu.cc'
--- src/wui/stock_menu.cc	2014-09-10 14:48:40 +0000
+++ src/wui/stock_menu.cc	2015-12-11 20:19:40 +0000
@@ -22,8 +22,8 @@
 #include "base/i18n.h"
 #include "economy/economy.h"
 #include "graphic/graphic.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/player.h"
-#include "logic/warehouse.h"
 #include "ui_basic/tabpanel.h"
 #include "wui/interactive_player.h"
 

=== modified file 'src/wui/trainingsitewindow.cc'
--- src/wui/trainingsitewindow.cc	2014-11-30 18:49:38 +0000
+++ src/wui/trainingsitewindow.cc	2015-12-11 20:19:40 +0000
@@ -18,7 +18,7 @@
  */
 
 #include "graphic/graphic.h"
-#include "logic/trainingsite.h"
+#include "logic/map_objects/tribes/trainingsite.h"
 #include "ui_basic/tabpanel.h"
 #include "wui/productionsitewindow.h"
 #include "wui/soldiercapacitycontrol.h"

=== modified file 'src/wui/transport_ui.cc'
--- src/wui/transport_ui.cc	2015-11-11 09:52:55 +0000
+++ src/wui/transport_ui.cc	2015-12-11 20:19:40 +0000
@@ -20,10 +20,10 @@
 #include "economy/economy.h"
 #include "graphic/graphic.h"
 #include "graphic/rendertarget.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/ware_descr.h"
 #include "logic/player.h"
 #include "logic/playercommand.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/ware_descr.h"
 #include "ui_basic/button.h"
 #include "ui_basic/tabpanel.h"
 #include "ui_basic/unique_window.h"

=== modified file 'src/wui/ware_statistics_menu.cc'
--- src/wui/ware_statistics_menu.cc	2015-11-11 09:52:55 +0000
+++ src/wui/ware_statistics_menu.cc	2015-12-11 20:19:40 +0000
@@ -23,9 +23,9 @@
 #include "graphic/graphic.h"
 #include "graphic/rendertarget.h"
 #include "logic/constants.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warelist.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warelist.h"
 #include "ui_basic/button.h"
 #include "ui_basic/checkbox.h"
 #include "ui_basic/slider.h"

=== modified file 'src/wui/warehousewindow.cc'
--- src/wui/warehousewindow.cc	2015-11-24 23:08:46 +0000
+++ src/wui/warehousewindow.cc	2015-12-11 20:19:40 +0000
@@ -19,9 +19,9 @@
 
 #include "graphic/graphic.h"
 #include "graphic/rendertarget.h"
+#include "logic/map_objects/tribes/warehouse.h"
 #include "logic/player.h"
 #include "logic/playercommand.h"
-#include "logic/warehouse.h"
 #include "ui_basic/tabpanel.h"
 #include "wui/buildingwindow.h"
 #include "wui/portdockwaresdisplay.h"

=== modified file 'src/wui/waresdisplay.cc'
--- src/wui/waresdisplay.cc	2015-11-22 08:22:29 +0000
+++ src/wui/waresdisplay.cc	2015-12-11 20:19:40 +0000
@@ -31,10 +31,10 @@
 #include "graphic/rendertarget.h"
 #include "graphic/text_layout.h"
 #include "logic/editor_game_base.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/ware_descr.h"
+#include "logic/map_objects/tribes/worker.h"
 #include "logic/player.h"
-#include "logic/tribes/tribe_descr.h"
-#include "logic/ware_descr.h"
-#include "logic/worker.h"
 
 const int WARE_MENU_INFO_SIZE = 12;
 

=== modified file 'src/wui/waresdisplay.h'
--- src/wui/waresdisplay.h	2015-11-11 09:52:55 +0000
+++ src/wui/waresdisplay.h	2015-12-11 20:19:40 +0000
@@ -24,9 +24,9 @@
 
 #include <boost/signals2.hpp>
 
-#include "logic/tribes/tribe_descr.h"
-#include "logic/warelist.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/tribes/tribe_descr.h"
+#include "logic/map_objects/tribes/warelist.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "ui_basic/textarea.h"
 
 namespace UI {struct Textarea;}

=== modified file 'src/wui/waresqueuedisplay.h'
--- src/wui/waresqueuedisplay.h	2015-11-11 09:52:55 +0000
+++ src/wui/waresqueuedisplay.h	2015-12-11 20:19:40 +0000
@@ -24,8 +24,8 @@
 
 #include <stdint.h>
 
-#include "logic/ware_descr.h"
-#include "logic/wareworker.h"
+#include "logic/map_objects/tribes/ware_descr.h"
+#include "logic/map_objects/tribes/wareworker.h"
 #include "ui_basic/button.h"
 #include "ui_basic/panel.h"
 #include "ui_basic/radiobutton.h"

=== modified file 'src/wui/watchwindow.cc'
--- src/wui/watchwindow.cc	2015-10-22 10:49:14 +0000
+++ src/wui/watchwindow.cc	2015-12-11 20:19:40 +0000
@@ -25,9 +25,9 @@
 #include "base/i18n.h"
 #include "base/macros.h"
 #include "graphic/graphic.h"
-#include "logic/bob.h"
 #include "logic/game.h"
 #include "logic/map.h"
+#include "logic/map_objects/bob.h"
 #include "logic/player.h"
 #include "profile/profile.h"
 #include "ui_basic/button.h"


Follow ups