diff --git a/.gitmodules b/.gitmodules
index c9096a28b128f6736632e7f9621455ff37ebd230..a8bc30f4293a52066e3c6bc08b1b24746686d1fb 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,4 +1,4 @@
 [submodule "3rdparty"]
-    path = 3rdparty
+    path = src/3rdparty
     url = git://gitorious.org/qt-labs/chromium.git
     ignore = all
diff --git a/build/qmake_extras/qmake_extras.pro b/build/qmake_extras/qmake_extras.pro
deleted file mode 100644
index 409993128caa7e5739b9228becfae94785d8218d..0000000000000000000000000000000000000000
--- a/build/qmake_extras/qmake_extras.pro
+++ /dev/null
@@ -1,6 +0,0 @@
-TEMPLATE = subdirs
-
-CONFIG += ordered
-
-SUBDIRS = host \
-          target
diff --git a/qtwebengine.gyp b/qtwebengine.gyp
deleted file mode 100644
index 0ddf816daf5eb1230fb48dd980c9b111c73d9298..0000000000000000000000000000000000000000
--- a/qtwebengine.gyp
+++ /dev/null
@@ -1,11 +0,0 @@
-{
-  'targets': [
-  {
-    'target_name': 'qtwebengine',
-    'type': 'none',
-    'dependencies': [
-      'lib/lib.gyp:*',
-    ],
-  }
-  ]
-}
diff --git a/3rdparty b/src/3rdparty
similarity index 100%
rename from 3rdparty
rename to src/3rdparty
diff --git a/lib/backing_store_qt.cpp b/src/core/backing_store_qt.cpp
similarity index 100%
rename from lib/backing_store_qt.cpp
rename to src/core/backing_store_qt.cpp
diff --git a/lib/backing_store_qt.h b/src/core/backing_store_qt.h
similarity index 100%
rename from lib/backing_store_qt.h
rename to src/core/backing_store_qt.h
diff --git a/lib/browser_context_qt.h b/src/core/browser_context_qt.h
similarity index 100%
rename from lib/browser_context_qt.h
rename to src/core/browser_context_qt.h
diff --git a/lib/chromium_gpu_helper.cpp b/src/core/chromium_gpu_helper.cpp
similarity index 100%
rename from lib/chromium_gpu_helper.cpp
rename to src/core/chromium_gpu_helper.cpp
diff --git a/lib/chromium_gpu_helper.h b/src/core/chromium_gpu_helper.h
similarity index 100%
rename from lib/chromium_gpu_helper.h
rename to src/core/chromium_gpu_helper.h
diff --git a/lib/chromium_overrides.cpp b/src/core/chromium_overrides.cpp
similarity index 100%
rename from lib/chromium_overrides.cpp
rename to src/core/chromium_overrides.cpp
diff --git a/lib/chromium_overrides.h b/src/core/chromium_overrides.h
similarity index 100%
rename from lib/chromium_overrides.h
rename to src/core/chromium_overrides.h
diff --git a/lib/content_browser_client_qt.cpp b/src/core/content_browser_client_qt.cpp
similarity index 100%
rename from lib/content_browser_client_qt.cpp
rename to src/core/content_browser_client_qt.cpp
diff --git a/lib/content_browser_client_qt.h b/src/core/content_browser_client_qt.h
similarity index 100%
rename from lib/content_browser_client_qt.h
rename to src/core/content_browser_client_qt.h
diff --git a/lib/content_client_qt.cpp b/src/core/content_client_qt.cpp
similarity index 100%
rename from lib/content_client_qt.cpp
rename to src/core/content_client_qt.cpp
diff --git a/lib/content_client_qt.h b/src/core/content_client_qt.h
similarity index 100%
rename from lib/content_client_qt.h
rename to src/core/content_client_qt.h
diff --git a/lib/lib.pro b/src/core/core_gyp_generator.pro
similarity index 100%
rename from lib/lib.pro
rename to src/core/core_gyp_generator.pro
diff --git a/lib/lib_resources.qrc b/src/core/core_resources.qrc
similarity index 100%
rename from lib/lib_resources.qrc
rename to src/core/core_resources.qrc
diff --git a/lib/delegated_frame_node.cpp b/src/core/delegated_frame_node.cpp
similarity index 100%
rename from lib/delegated_frame_node.cpp
rename to src/core/delegated_frame_node.cpp
diff --git a/lib/delegated_frame_node.h b/src/core/delegated_frame_node.h
similarity index 100%
rename from lib/delegated_frame_node.h
rename to src/core/delegated_frame_node.h
diff --git a/lib/dev_tools_http_handler_delegate_qt.cpp b/src/core/dev_tools_http_handler_delegate_qt.cpp
similarity index 100%
rename from lib/dev_tools_http_handler_delegate_qt.cpp
rename to src/core/dev_tools_http_handler_delegate_qt.cpp
diff --git a/lib/dev_tools_http_handler_delegate_qt.h b/src/core/dev_tools_http_handler_delegate_qt.h
similarity index 100%
rename from lib/dev_tools_http_handler_delegate_qt.h
rename to src/core/dev_tools_http_handler_delegate_qt.h
diff --git a/lib/devtools.qrc b/src/core/devtools.qrc
similarity index 100%
rename from lib/devtools.qrc
rename to src/core/devtools.qrc
diff --git a/lib/download_manager_delegate_qt.cpp b/src/core/download_manager_delegate_qt.cpp
similarity index 100%
rename from lib/download_manager_delegate_qt.cpp
rename to src/core/download_manager_delegate_qt.cpp
diff --git a/lib/download_manager_delegate_qt.h b/src/core/download_manager_delegate_qt.h
similarity index 100%
rename from lib/download_manager_delegate_qt.h
rename to src/core/download_manager_delegate_qt.h
diff --git a/build/qmake_extras/host/host.pro b/src/core/gyp_configure_host.pro
similarity index 100%
rename from build/qmake_extras/host/host.pro
rename to src/core/gyp_configure_host.pro
diff --git a/build/qmake_extras/target/target.pro b/src/core/gyp_configure_target.pro
similarity index 100%
rename from build/qmake_extras/target/target.pro
rename to src/core/gyp_configure_target.pro
diff --git a/build/build.pro b/src/core/gyp_run.pro
similarity index 100%
rename from build/build.pro
rename to src/core/gyp_run.pro
diff --git a/lib/javascript_dialog_manager_qt.cpp b/src/core/javascript_dialog_manager_qt.cpp
similarity index 100%
rename from lib/javascript_dialog_manager_qt.cpp
rename to src/core/javascript_dialog_manager_qt.cpp
diff --git a/lib/javascript_dialog_manager_qt.h b/src/core/javascript_dialog_manager_qt.h
similarity index 100%
rename from lib/javascript_dialog_manager_qt.h
rename to src/core/javascript_dialog_manager_qt.h
diff --git a/lib/network_delegate_qt.cpp b/src/core/network_delegate_qt.cpp
similarity index 100%
rename from lib/network_delegate_qt.cpp
rename to src/core/network_delegate_qt.cpp
diff --git a/lib/network_delegate_qt.h b/src/core/network_delegate_qt.h
similarity index 100%
rename from lib/network_delegate_qt.h
rename to src/core/network_delegate_qt.h
diff --git a/lib/process_main.cpp b/src/core/process_main.cpp
similarity index 100%
rename from lib/process_main.cpp
rename to src/core/process_main.cpp
diff --git a/lib/process_main.h b/src/core/process_main.h
similarity index 100%
rename from lib/process_main.h
rename to src/core/process_main.h
diff --git a/qtwebengine.gypi b/src/core/qtwebengine.gypi
similarity index 100%
rename from qtwebengine.gypi
rename to src/core/qtwebengine.gypi
diff --git a/build/qtwebengine_extras.gypi b/src/core/qtwebengine_extras.gypi
similarity index 100%
rename from build/qtwebengine_extras.gypi
rename to src/core/qtwebengine_extras.gypi
diff --git a/lib/qtwebenginecoreglobal.h b/src/core/qtwebenginecoreglobal.h
similarity index 100%
rename from lib/qtwebenginecoreglobal.h
rename to src/core/qtwebenginecoreglobal.h
diff --git a/lib/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp
similarity index 100%
rename from lib/render_widget_host_view_qt.cpp
rename to src/core/render_widget_host_view_qt.cpp
diff --git a/lib/render_widget_host_view_qt.h b/src/core/render_widget_host_view_qt.h
similarity index 100%
rename from lib/render_widget_host_view_qt.h
rename to src/core/render_widget_host_view_qt.h
diff --git a/lib/render_widget_host_view_qt_delegate.h b/src/core/render_widget_host_view_qt_delegate.h
similarity index 100%
rename from lib/render_widget_host_view_qt_delegate.h
rename to src/core/render_widget_host_view_qt_delegate.h
diff --git a/lib/resource_bundle_qt.cpp b/src/core/resource_bundle_qt.cpp
similarity index 100%
rename from lib/resource_bundle_qt.cpp
rename to src/core/resource_bundle_qt.cpp
diff --git a/lib/resource_context_qt.cpp b/src/core/resource_context_qt.cpp
similarity index 100%
rename from lib/resource_context_qt.cpp
rename to src/core/resource_context_qt.cpp
diff --git a/lib/resource_context_qt.h b/src/core/resource_context_qt.h
similarity index 100%
rename from lib/resource_context_qt.h
rename to src/core/resource_context_qt.h
diff --git a/resources/devtools_discovery_page.html b/src/core/resources/devtools_discovery_page.html
similarity index 100%
rename from resources/devtools_discovery_page.html
rename to src/core/resources/devtools_discovery_page.html
diff --git a/resources/resources.pro b/src/core/resources/resources.pro
similarity index 100%
rename from resources/resources.pro
rename to src/core/resources/resources.pro
diff --git a/lib/type_conversion.h b/src/core/type_conversion.h
similarity index 100%
rename from lib/type_conversion.h
rename to src/core/type_conversion.h
diff --git a/lib/url_request_context_getter_qt.cpp b/src/core/url_request_context_getter_qt.cpp
similarity index 100%
rename from lib/url_request_context_getter_qt.cpp
rename to src/core/url_request_context_getter_qt.cpp
diff --git a/lib/url_request_context_getter_qt.h b/src/core/url_request_context_getter_qt.h
similarity index 100%
rename from lib/url_request_context_getter_qt.h
rename to src/core/url_request_context_getter_qt.h
diff --git a/lib/web_contents_adapter.cpp b/src/core/web_contents_adapter.cpp
similarity index 100%
rename from lib/web_contents_adapter.cpp
rename to src/core/web_contents_adapter.cpp
diff --git a/lib/web_contents_adapter.h b/src/core/web_contents_adapter.h
similarity index 100%
rename from lib/web_contents_adapter.h
rename to src/core/web_contents_adapter.h
diff --git a/lib/web_contents_adapter_client.h b/src/core/web_contents_adapter_client.h
similarity index 100%
rename from lib/web_contents_adapter_client.h
rename to src/core/web_contents_adapter_client.h
diff --git a/lib/web_contents_delegate_qt.cpp b/src/core/web_contents_delegate_qt.cpp
similarity index 100%
rename from lib/web_contents_delegate_qt.cpp
rename to src/core/web_contents_delegate_qt.cpp
diff --git a/lib/web_contents_delegate_qt.h b/src/core/web_contents_delegate_qt.h
similarity index 100%
rename from lib/web_contents_delegate_qt.h
rename to src/core/web_contents_delegate_qt.h
diff --git a/lib/web_contents_view_qt.cpp b/src/core/web_contents_view_qt.cpp
similarity index 100%
rename from lib/web_contents_view_qt.cpp
rename to src/core/web_contents_view_qt.cpp
diff --git a/lib/web_contents_view_qt.h b/src/core/web_contents_view_qt.h
similarity index 100%
rename from lib/web_contents_view_qt.h
rename to src/core/web_contents_view_qt.h
diff --git a/lib/web_engine_context.cpp b/src/core/web_engine_context.cpp
similarity index 100%
rename from lib/web_engine_context.cpp
rename to src/core/web_engine_context.cpp
diff --git a/lib/web_engine_context.h b/src/core/web_engine_context.h
similarity index 100%
rename from lib/web_engine_context.h
rename to src/core/web_engine_context.h
diff --git a/lib/web_event_factory.cpp b/src/core/web_event_factory.cpp
similarity index 100%
rename from lib/web_event_factory.cpp
rename to src/core/web_event_factory.cpp
diff --git a/lib/web_event_factory.h b/src/core/web_event_factory.h
similarity index 100%
rename from lib/web_event_factory.h
rename to src/core/web_event_factory.h
diff --git a/lib/yuv_video_node.cpp b/src/core/yuv_video_node.cpp
similarity index 100%
rename from lib/yuv_video_node.cpp
rename to src/core/yuv_video_node.cpp
diff --git a/lib/yuv_video_node.h b/src/core/yuv_video_node.h
similarity index 100%
rename from lib/yuv_video_node.h
rename to src/core/yuv_video_node.h
diff --git a/process/main.cpp b/src/process/main.cpp
similarity index 100%
rename from process/main.cpp
rename to src/process/main.cpp
diff --git a/process/process.pro b/src/process/process.pro
similarity index 100%
rename from process/process.pro
rename to src/process/process.pro
diff --git a/qtwebengine.pro b/src/src.pro
similarity index 100%
rename from qtwebengine.pro
rename to src/src.pro
diff --git a/lib/quick/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp
similarity index 100%
rename from lib/quick/qquickwebengineview.cpp
rename to src/webengine/api/qquickwebengineview.cpp
diff --git a/lib/quick/qquickwebengineview_p.h b/src/webengine/api/qquickwebengineview_p.h
similarity index 100%
rename from lib/quick/qquickwebengineview_p.h
rename to src/webengine/api/qquickwebengineview_p.h
diff --git a/lib/quick/qquickwebengineview_p_p.h b/src/webengine/api/qquickwebengineview_p_p.h
similarity index 100%
rename from lib/quick/qquickwebengineview_p_p.h
rename to src/webengine/api/qquickwebengineview_p_p.h
diff --git a/lib/quick/qtwebengineglobal.h b/src/webengine/api/qtwebengineglobal.h
similarity index 100%
rename from lib/quick/qtwebengineglobal.h
rename to src/webengine/api/qtwebengineglobal.h
diff --git a/lib/quick/qtwebengineglobal_p.h b/src/webengine/api/qtwebengineglobal_p.h
similarity index 100%
rename from lib/quick/qtwebengineglobal_p.h
rename to src/webengine/api/qtwebengineglobal_p.h
diff --git a/lib/quick/plugin/experimental/experimental.pro b/src/webengine/plugin/experimental/experimental.pro
similarity index 100%
rename from lib/quick/plugin/experimental/experimental.pro
rename to src/webengine/plugin/experimental/experimental.pro
diff --git a/lib/quick/plugin/experimental/plugin.cpp b/src/webengine/plugin/experimental/plugin.cpp
similarity index 100%
rename from lib/quick/plugin/experimental/plugin.cpp
rename to src/webengine/plugin/experimental/plugin.cpp
diff --git a/lib/quick/plugin/experimental/qmldir b/src/webengine/plugin/experimental/qmldir
similarity index 100%
rename from lib/quick/plugin/experimental/qmldir
rename to src/webengine/plugin/experimental/qmldir
diff --git a/lib/quick/plugin/plugin.cpp b/src/webengine/plugin/plugin.cpp
similarity index 100%
rename from lib/quick/plugin/plugin.cpp
rename to src/webengine/plugin/plugin.cpp
diff --git a/lib/quick/plugin/plugin.pro b/src/webengine/plugin/plugin.pro
similarity index 100%
rename from lib/quick/plugin/plugin.pro
rename to src/webengine/plugin/plugin.pro
diff --git a/lib/quick/plugin/qmldir b/src/webengine/plugin/qmldir
similarity index 100%
rename from lib/quick/plugin/qmldir
rename to src/webengine/plugin/qmldir
diff --git a/lib/quick/render_widget_host_view_qt_delegate_quick.cpp b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
similarity index 100%
rename from lib/quick/render_widget_host_view_qt_delegate_quick.cpp
rename to src/webengine/render_widget_host_view_qt_delegate_quick.cpp
diff --git a/lib/quick/render_widget_host_view_qt_delegate_quick.h b/src/webengine/render_widget_host_view_qt_delegate_quick.h
similarity index 100%
rename from lib/quick/render_widget_host_view_qt_delegate_quick.h
rename to src/webengine/render_widget_host_view_qt_delegate_quick.h
diff --git a/lib/quick/quick.pro b/src/webengine/webengine.pro
similarity index 100%
rename from lib/quick/quick.pro
rename to src/webengine/webengine.pro
diff --git a/lib/widgets/Api/qtwebenginewidgetsglobal.h b/src/webenginewidgets/api/qtwebenginewidgetsglobal.h
similarity index 100%
rename from lib/widgets/Api/qtwebenginewidgetsglobal.h
rename to src/webenginewidgets/api/qtwebenginewidgetsglobal.h
diff --git a/lib/widgets/Api/qwebenginehistory.cpp b/src/webenginewidgets/api/qwebenginehistory.cpp
similarity index 100%
rename from lib/widgets/Api/qwebenginehistory.cpp
rename to src/webenginewidgets/api/qwebenginehistory.cpp
diff --git a/lib/widgets/Api/qwebenginehistory.h b/src/webenginewidgets/api/qwebenginehistory.h
similarity index 100%
rename from lib/widgets/Api/qwebenginehistory.h
rename to src/webenginewidgets/api/qwebenginehistory.h
diff --git a/lib/widgets/Api/qwebenginehistory_p.h b/src/webenginewidgets/api/qwebenginehistory_p.h
similarity index 100%
rename from lib/widgets/Api/qwebenginehistory_p.h
rename to src/webenginewidgets/api/qwebenginehistory_p.h
diff --git a/lib/widgets/Api/qwebenginehistoryinterface.h b/src/webenginewidgets/api/qwebenginehistoryinterface.h
similarity index 100%
rename from lib/widgets/Api/qwebenginehistoryinterface.h
rename to src/webenginewidgets/api/qwebenginehistoryinterface.h
diff --git a/lib/widgets/Api/qwebengineinspector.h b/src/webenginewidgets/api/qwebengineinspector.h
similarity index 100%
rename from lib/widgets/Api/qwebengineinspector.h
rename to src/webenginewidgets/api/qwebengineinspector.h
diff --git a/lib/widgets/Api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp
similarity index 100%
rename from lib/widgets/Api/qwebenginepage.cpp
rename to src/webenginewidgets/api/qwebenginepage.cpp
diff --git a/lib/widgets/Api/qwebenginepage.h b/src/webenginewidgets/api/qwebenginepage.h
similarity index 100%
rename from lib/widgets/Api/qwebenginepage.h
rename to src/webenginewidgets/api/qwebenginepage.h
diff --git a/lib/widgets/Api/qwebenginepage_p.h b/src/webenginewidgets/api/qwebenginepage_p.h
similarity index 100%
rename from lib/widgets/Api/qwebenginepage_p.h
rename to src/webenginewidgets/api/qwebenginepage_p.h
diff --git a/lib/widgets/Api/qwebenginesecurityorigin.h b/src/webenginewidgets/api/qwebenginesecurityorigin.h
similarity index 100%
rename from lib/widgets/Api/qwebenginesecurityorigin.h
rename to src/webenginewidgets/api/qwebenginesecurityorigin.h
diff --git a/lib/widgets/Api/qwebenginesettings.h b/src/webenginewidgets/api/qwebenginesettings.h
similarity index 100%
rename from lib/widgets/Api/qwebenginesettings.h
rename to src/webenginewidgets/api/qwebenginesettings.h
diff --git a/lib/widgets/Api/qwebengineview.cpp b/src/webenginewidgets/api/qwebengineview.cpp
similarity index 100%
rename from lib/widgets/Api/qwebengineview.cpp
rename to src/webenginewidgets/api/qwebengineview.cpp
diff --git a/lib/widgets/Api/qwebengineview.h b/src/webenginewidgets/api/qwebengineview.h
similarity index 100%
rename from lib/widgets/Api/qwebengineview.h
rename to src/webenginewidgets/api/qwebengineview.h
diff --git a/lib/widgets/Api/qwebengineview_p.h b/src/webenginewidgets/api/qwebengineview_p.h
similarity index 100%
rename from lib/widgets/Api/qwebengineview_p.h
rename to src/webenginewidgets/api/qwebengineview_p.h
diff --git a/lib/widgets/render_widget_host_view_qt_delegate_widget.cpp b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
similarity index 100%
rename from lib/widgets/render_widget_host_view_qt_delegate_widget.cpp
rename to src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
diff --git a/lib/widgets/render_widget_host_view_qt_delegate_widget.h b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.h
similarity index 100%
rename from lib/widgets/render_widget_host_view_qt_delegate_widget.h
rename to src/webenginewidgets/render_widget_host_view_qt_delegate_widget.h
diff --git a/lib/widgets/widgets.pro b/src/webenginewidgets/webenginewidgets.pro
similarity index 100%
rename from lib/widgets/widgets.pro
rename to src/webenginewidgets/webenginewidgets.pro
diff --git a/build/scripts/build_resources.py b/tools/buildscripts/build_resources.py
similarity index 100%
rename from build/scripts/build_resources.py
rename to tools/buildscripts/build_resources.py
diff --git a/build/scripts/find-included-moc-files b/tools/buildscripts/find-included-moc-files
similarity index 100%
rename from build/scripts/find-included-moc-files
rename to tools/buildscripts/find-included-moc-files
diff --git a/build/scripts/find-mocables b/tools/buildscripts/find-mocables
similarity index 100%
rename from build/scripts/find-mocables
rename to tools/buildscripts/find-mocables
diff --git a/build/gyp_qtwebengine b/tools/buildscripts/gyp_qtwebengine
similarity index 100%
rename from build/gyp_qtwebengine
rename to tools/buildscripts/gyp_qtwebengine
diff --git a/build/qmake/mkspecs/features/default_pre.prf b/tools/qmake/mkspecs/features/default_pre.prf
similarity index 100%
rename from build/qmake/mkspecs/features/default_pre.prf
rename to tools/qmake/mkspecs/features/default_pre.prf
diff --git a/build/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf
similarity index 100%
rename from build/qmake/mkspecs/features/functions.prf
rename to tools/qmake/mkspecs/features/functions.prf
diff --git a/build/qmake/mkspecs/features/gyp_generator.prf b/tools/qmake/mkspecs/features/gyp_generator.prf
similarity index 100%
rename from build/qmake/mkspecs/features/gyp_generator.prf
rename to tools/qmake/mkspecs/features/gyp_generator.prf
diff --git a/build/qmake/mkspecs/features/mac/default_post.prf b/tools/qmake/mkspecs/features/mac/default_post.prf
similarity index 100%
rename from build/qmake/mkspecs/features/mac/default_post.prf
rename to tools/qmake/mkspecs/features/mac/default_post.prf
diff --git a/tools/git_submodule.py b/tools/scripts/git_submodule.py
similarity index 100%
rename from tools/git_submodule.py
rename to tools/scripts/git_submodule.py
diff --git a/tools/take_snapshot.py b/tools/scripts/take_snapshot.py
similarity index 100%
rename from tools/take_snapshot.py
rename to tools/scripts/take_snapshot.py