diff --git a/.gitmodules b/.gitmodules
index 513216fa884eca8b1a0867097a9d32d4d638955d..c18a7924bb1c752967fb12c55b0ae63ee69b2d46 100755
--- a/.gitmodules
+++ b/.gitmodules
@@ -5,7 +5,7 @@
 
 [submodule "libdap-crypto"]
 	path = libdap-crypto
-	url = https://github.com/kelvinblockchain/libdap-crypto
+	url = https://github.com/cellframe/libdap-crypto
 	branch = master
 
 [submodule "test/libdap-test"]
diff --git a/.travis.yml b/.travis.yml
index 60cd883f0cfd8d703f12144422c57b5141324c37..0150f536e1fd88ae59759081f40d4081365d9fee 100755
--- a/.travis.yml
+++ b/.travis.yml
@@ -11,7 +11,7 @@ before_install:
 script:
     - mkdir build
     - cd build 
-    - cmake .
+    - cmake -DBUILD_DAP_SERVER_CORE_TESTS=ON ../
     - make
     - ctest --verbose
 
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 223f7fda03d4307b77dfeb1a6d143e50c98bcd7f..3e6b7f2b878d7a4a95ffb2ba0a38c7dbc09e68f5 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,29 +1,33 @@
 cmake_minimum_required(VERSION 3.0)
 
-if(TARGET dap_core_server)
+if(TARGET dap_server_core)
     return() # The project has already been built.
 endif()
 
-project (dap_core_server C)
+project (dap_server_core C)
 set(CMAKE_C_STANDARD 11)
 
 add_definitions ("-D_GNU_SOURCE")
 
 if(NOT (${SUBMODULES_NO_BUILD} MATCHES ON))
+    set(SUBMODULES_NO_BUILD ON)
     if ( NOT ( TARGET dap_core ) )
         add_subdirectory(libdap)
     endif()
     if ( NOT ( TARGET dap_crypto ) )
         add_subdirectory(libdap-crypto)
     endif()
+endif()
+
+if (BUILD_DAP_SERVER_CORE_TESTS)
     enable_testing()
     add_subdirectory(test)
 endif()
 
-file(GLOB CORE_SERVER_SOURCES *.c)
-file(GLOB CORE_SERVER_HEADERS *.h)
+file(GLOB CORE_SERVER_SOURCES src/*.c)
+file(GLOB CORE_SERVER_HEADERS include/*.h src/*.h)
 
 add_library(${PROJECT_NAME} STATIC ${CORE_SERVER_SOURCES} ${CORE_SERVER_HEADERS})
 
 target_link_libraries(${PROJECT_NAME} pthread ev memcached dap_core dap_crypto)
-target_include_directories(${PROJECT_NAME} INTERFACE .)
+target_include_directories(${PROJECT_NAME} INTERFACE include/ )
diff --git a/dap_client_remote.h b/include/dap_client_remote.h
similarity index 100%
rename from dap_client_remote.h
rename to include/dap_client_remote.h
diff --git a/dap_events.h b/include/dap_events.h
similarity index 100%
rename from dap_events.h
rename to include/dap_events.h
diff --git a/dap_events_socket.h b/include/dap_events_socket.h
similarity index 100%
rename from dap_events_socket.h
rename to include/dap_events_socket.h
diff --git a/dap_memcached.h b/include/dap_memcached.h
similarity index 100%
rename from dap_memcached.h
rename to include/dap_memcached.h
diff --git a/dap_server.h b/include/dap_server.h
similarity index 100%
rename from dap_server.h
rename to include/dap_server.h
diff --git a/dap_traffic_track.h b/include/dap_traffic_track.h
similarity index 100%
rename from dap_traffic_track.h
rename to include/dap_traffic_track.h
diff --git a/libdap-crypto b/libdap-crypto
new file mode 160000
index 0000000000000000000000000000000000000000..ff63d762657f9687173db825705b8bf4b958abee
--- /dev/null
+++ b/libdap-crypto
@@ -0,0 +1 @@
+Subproject commit ff63d762657f9687173db825705b8bf4b958abee
diff --git a/dap_client_remote.c b/src/dap_client_remote.c
similarity index 100%
rename from dap_client_remote.c
rename to src/dap_client_remote.c
diff --git a/dap_events.c b/src/dap_events.c
similarity index 100%
rename from dap_events.c
rename to src/dap_events.c
diff --git a/dap_events_socket.c b/src/dap_events_socket.c
similarity index 100%
rename from dap_events_socket.c
rename to src/dap_events_socket.c
diff --git a/dap_memcached.c b/src/dap_memcached.c
similarity index 100%
rename from dap_memcached.c
rename to src/dap_memcached.c
diff --git a/dap_server.c b/src/dap_server.c
similarity index 100%
rename from dap_server.c
rename to src/dap_server.c
diff --git a/dap_traffic_track.c b/src/dap_traffic_track.c
similarity index 100%
rename from dap_traffic_track.c
rename to src/dap_traffic_track.c
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index e1e3b653959dcecd6e66c38f17c9b366e73e741b..65bc2488ca28aae8e2e3fadcc4e03fa1bd8ea920 100755
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -1,7 +1,7 @@
-if(TARGET core_server_test)
+if(TARGET server_core_test)
     return() # The project has already been built.
 endif()
-project(core_server_test)
+project(server_core_test)
 
 add_subdirectory(libdap-test)
 
@@ -10,7 +10,7 @@ file(GLOB HEADERS *.h)
 
 add_executable(${PROJECT_NAME} ${SOURCES} ${HEADERS})
 
-target_link_libraries(${PROJECT_NAME} dap_test dap_core_server ev)
+target_link_libraries(${PROJECT_NAME} dap_test dap_core dap_crypto dap_server_core ev)
 
 add_test(
     NAME core_server_test
diff --git a/test/main.c b/test/main.c
index 8a591c1b73cf69d323131cdc3271745a2f8c1d86..b5c0e55958626dcf72043ebff53b844a76850024 100755
--- a/test/main.c
+++ b/test/main.c
@@ -3,7 +3,8 @@
 
 int main(void) {
     // switch off debug info from library
-//    set_log_level(L_CRITICAL);
-//    dap_traffic_track_tests_run();
+    dap_log_level_set(L_CRITICAL);
+    dap_traffic_track_tests_run();
     return 0;
 }
+