diff --git a/tests/views_test.info b/tests/modules/views_test/views_test.info
similarity index 100%
rename from tests/views_test.info
rename to tests/modules/views_test/views_test.info
diff --git a/tests/views_test.install b/tests/modules/views_test/views_test.install
similarity index 100%
rename from tests/views_test.install
rename to tests/modules/views_test/views_test.install
diff --git a/tests/views_test.module b/tests/modules/views_test/views_test.module
similarity index 100%
rename from tests/views_test.module
rename to tests/modules/views_test/views_test.module
diff --git a/tests/views_test.views_default.inc b/tests/modules/views_test/views_test.views_default.inc
similarity index 100%
rename from tests/views_test.views_default.inc
rename to tests/modules/views_test/views_test.views_default.inc
diff --git a/includes/admin.inc b/view_ui/includes/admin.inc
similarity index 100%
rename from includes/admin.inc
rename to view_ui/includes/admin.inc
diff --git a/plugins/export_ui/views_ui.class.php b/view_ui/plugins/export_ui/views_ui.class.php
similarity index 96%
rename from plugins/export_ui/views_ui.class.php
rename to view_ui/plugins/export_ui/views_ui.class.php
index c5c4001..2ba6043 100644
--- a/plugins/export_ui/views_ui.class.php
+++ b/view_ui/plugins/export_ui/views_ui.class.php
@@ -73,7 +73,7 @@ class views_ui extends ctools_export_ui {
       $row_class .= " element-invisible";
     }
 
-    views_include('admin');
+    module_load_include('inc', 'views_ui', 'includes/admin');
 
     parent::list_form($form, $form_state);
 
@@ -252,7 +252,7 @@ class views_ui extends ctools_export_ui {
   }
 
   function list_render(&$form_state) {
-    views_include('admin');
+    module_load_include('inc', 'views_ui', 'includes/admin');
     views_ui_add_admin_css();
     if (empty($_REQUEST['js'])) {
       views_ui_check_advanced_help();
diff --git a/plugins/export_ui/views_ui.inc b/view_ui/plugins/export_ui/views_ui.inc
similarity index 100%
rename from plugins/export_ui/views_ui.inc
rename to view_ui/plugins/export_ui/views_ui.inc
diff --git a/tests/views_ui.test b/view_ui/tests/views_ui.test
similarity index 100%
rename from tests/views_ui.test
rename to view_ui/tests/views_ui.test
diff --git a/theme/views-ui-display-tab-bucket.tpl.php b/view_ui/theme/views-ui-display-tab-bucket.tpl.php
similarity index 100%
rename from theme/views-ui-display-tab-bucket.tpl.php
rename to view_ui/theme/views-ui-display-tab-bucket.tpl.php
diff --git a/theme/views-ui-display-tab-setting.tpl.php b/view_ui/theme/views-ui-display-tab-setting.tpl.php
similarity index 100%
rename from theme/views-ui-display-tab-setting.tpl.php
rename to view_ui/theme/views-ui-display-tab-setting.tpl.php
diff --git a/theme/views-ui-edit-item.tpl.php b/view_ui/theme/views-ui-edit-item.tpl.php
similarity index 100%
rename from theme/views-ui-edit-item.tpl.php
rename to view_ui/theme/views-ui-edit-item.tpl.php
diff --git a/theme/views-ui-edit-view.tpl.php b/view_ui/theme/views-ui-edit-view.tpl.php
similarity index 100%
rename from theme/views-ui-edit-view.tpl.php
rename to view_ui/theme/views-ui-edit-view.tpl.php
diff --git a/views_ui.info b/view_ui/views_ui.info
similarity index 68%
rename from views_ui.info
rename to view_ui/views_ui.info
index b131de9..05f391f 100644
--- a/views_ui.info
+++ b/view_ui/views_ui.info
@@ -4,5 +4,6 @@ package = Views
 core = 8.x
 configure = admin/structure/views
 dependencies[] = views
-files[] = views_ui.module
-files[] = plugins/views_wizard/views_ui_base_views_wizard.class.php
+
+; Tests
+files[] = tests/views_ui.test
diff --git a/views_ui.module b/view_ui/views_ui.module
similarity index 99%
rename from views_ui.module
rename to view_ui/views_ui.module
index 4306ea0..8a6b986 100644
--- a/views_ui.module
+++ b/view_ui/views_ui.module
@@ -159,7 +159,7 @@ function views_ui_menu() {
  * Implements hook_theme().
  */
 function views_ui_theme() {
-  $path = drupal_get_path('module', 'views');
+  $path = drupal_get_path('module', 'views_ui');
   require_once DRUPAL_ROOT . "/$path/includes/admin.inc";
 
   return array(
@@ -219,13 +219,6 @@ function views_ui_theme() {
     'views_ui_view_preview_section' => array(
       'variables' => array('view' => NULL, 'section' => NULL, 'content' => NULL, 'links' => ''),
     ),
-
-    // Generic container wrapper, to use instead of theme_container when an id
-    // is not desired.
-    'views_container' => array(
-      'render element' => 'element',
-      'file' => 'theme/theme.inc',
-    ),
   );
 }
 
diff --git a/views.info b/views.info
index 8477fc2..1a59629 100644
--- a/views.info
+++ b/views.info
@@ -266,4 +266,6 @@ files[] = tests/user/views_user_argument_validate.test
 files[] = tests/user/views_user.test
 files[] = tests/views_cache.test
 files[] = tests/views_view.test
-files[] = tests/views_ui.test
+
+; Temporarily moved from views_ui.info
+files[] = plugins/views_wizard/views_ui_base_views_wizard.class.php
diff --git a/views.module b/views.module
index 51a3bcb..78de4c5 100644
--- a/views.module
+++ b/views.module
@@ -160,6 +160,13 @@ function views_theme($existing, $type, $theme, $path) {
     'variables' => array('more_url' => NULL, 'link_text' => 'more', 'view' => NULL),
   );
 
+  // Generic container wrapper, to use instead of theme_container when an id
+  // is not desired.
+  $hooks['views_container'] = $base + array(
+    'render element' => 'element',
+    'file' => 'theme/theme.inc',
+  );
+
   // Add theme suggestions which are part of modules.
   foreach (views_get_module_apis() as $info) {
     if (isset($info['template path'])) {
