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/css/ie/views-admin.ie7.css b/view_ui/css/ie/views-admin.ie7.css
similarity index 100%
rename from css/ie/views-admin.ie7.css
rename to view_ui/css/ie/views-admin.ie7.css
diff --git a/css/views-admin-rtl.css b/view_ui/css/views-admin-rtl.css
similarity index 100%
rename from css/views-admin-rtl.css
rename to view_ui/css/views-admin-rtl.css
diff --git a/css/views-admin.advanced_help.css b/view_ui/css/views-admin.advanced_help.css
similarity index 100%
rename from css/views-admin.advanced_help.css
rename to view_ui/css/views-admin.advanced_help.css
diff --git a/css/views-admin.bartik-rtl.css b/view_ui/css/views-admin.bartik-rtl.css
similarity index 100%
rename from css/views-admin.bartik-rtl.css
rename to view_ui/css/views-admin.bartik-rtl.css
diff --git a/css/views-admin.bartik.css b/view_ui/css/views-admin.bartik.css
similarity index 100%
rename from css/views-admin.bartik.css
rename to view_ui/css/views-admin.bartik.css
diff --git a/css/views-admin.contextual.css b/view_ui/css/views-admin.contextual.css
similarity index 100%
rename from css/views-admin.contextual.css
rename to view_ui/css/views-admin.contextual.css
diff --git a/css/views-admin.css b/view_ui/css/views-admin.css
similarity index 100%
rename from css/views-admin.css
rename to view_ui/css/views-admin.css
diff --git a/css/views-admin.ctools-rtl.css b/view_ui/css/views-admin.ctools-rtl.css
similarity index 100%
rename from css/views-admin.ctools-rtl.css
rename to view_ui/css/views-admin.ctools-rtl.css
diff --git a/css/views-admin.ctools.css b/view_ui/css/views-admin.ctools.css
similarity index 100%
rename from css/views-admin.ctools.css
rename to view_ui/css/views-admin.ctools.css
diff --git a/css/views-admin.garland-rtl.css b/view_ui/css/views-admin.garland-rtl.css
similarity index 100%
rename from css/views-admin.garland-rtl.css
rename to view_ui/css/views-admin.garland-rtl.css
diff --git a/css/views-admin.garland.css b/view_ui/css/views-admin.garland.css
similarity index 100%
rename from css/views-admin.garland.css
rename to view_ui/css/views-admin.garland.css
diff --git a/css/views-admin.seven-rtl.css b/view_ui/css/views-admin.seven-rtl.css
similarity index 100%
rename from css/views-admin.seven-rtl.css
rename to view_ui/css/views-admin.seven-rtl.css
diff --git a/css/views-admin.seven.css b/view_ui/css/views-admin.seven.css
similarity index 100%
rename from css/views-admin.seven.css
rename to view_ui/css/views-admin.seven.css
diff --git a/css/views-admin.theme-rtl.css b/view_ui/css/views-admin.theme-rtl.css
similarity index 100%
rename from css/views-admin.theme-rtl.css
rename to view_ui/css/views-admin.theme-rtl.css
diff --git a/css/views-admin.theme.css b/view_ui/css/views-admin.theme.css
similarity index 98%
rename from css/views-admin.theme.css
rename to view_ui/css/views-admin.theme.css
index df45cdf..dcb5b1e 100644
--- a/css/views-admin.theme.css
+++ b/view_ui/css/views-admin.theme.css
@@ -39,20 +39,20 @@
 .views-admin .icon,
 .views-admin .icon-text {
   background-attachment: scroll;
-  background-image: url("../images/sprites.png");
+  background-image: url("../../images/sprites.png");
   background-position: left top; /* LTR */
   background-repeat: no-repeat;
 }
 
 .views-admin a.icon {
   background-image:
-    url("../images/sprites.png"),
+    url("../../images/sprites.png"),
     -moz-linear-gradient(
       -90deg,
       #ffffff 0px,
       #e8e8e8 100%);
   background-image:
-    url("../images/sprites.png"),
+    url("../../images/sprites.png"),
     -webkit-gradient(
       linear,
       left top,
@@ -61,7 +61,7 @@
       color-stop(1.0, rgba(232, 232, 232, 1.0))
     );
   background-image:
-    url("../images/sprites.png"),
+    url("../../images/sprites.png"),
     -webkit-linear-gradient(
       -90deg,
       #ffffff 0px,
@@ -727,7 +727,7 @@ td.group-title {
 }
 
 .views-ui-dialog .ui-dialog-titlebar-close {
-  background: url("../images/close.png") no-repeat scroll 6px 3px #F3F4EE;
+  background: url("../../images/close.png") no-repeat scroll 6px 3px #F3F4EE;
   border-color: #aaaaaa;
   -moz-border-radius: 0 10px 12px 0;
   -webkit-border-radius: 0 10px 12px 0;
@@ -1031,7 +1031,7 @@ td.group-title {
 
 .ajax-progress-throbber {
   background-color: #232323;
-  background-image: url("../images/loading-small.gif");
+  background-image: url("../../images/loading-small.gif");
   background-position: center center;
   background-repeat: no-repeat;
   -moz-border-radius: 7px;
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/js/views-admin.js b/view_ui/js/views-admin.js
similarity index 100%
rename from js/views-admin.js
rename to view_ui/js/views-admin.js
diff --git a/plugins/export_ui/views_ui.class.php b/view_ui/plugins/export_ui/views_ui.class.php
similarity index 99%
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/plugins/views_wizard/comment.inc b/view_ui/plugins/views_wizard/comment.inc
similarity index 100%
rename from plugins/views_wizard/comment.inc
rename to view_ui/plugins/views_wizard/comment.inc
diff --git a/plugins/views_wizard/file_managed.inc b/view_ui/plugins/views_wizard/file_managed.inc
similarity index 100%
rename from plugins/views_wizard/file_managed.inc
rename to view_ui/plugins/views_wizard/file_managed.inc
diff --git a/plugins/views_wizard/node.inc b/view_ui/plugins/views_wizard/node.inc
similarity index 100%
rename from plugins/views_wizard/node.inc
rename to view_ui/plugins/views_wizard/node.inc
diff --git a/plugins/views_wizard/node_revision.inc b/view_ui/plugins/views_wizard/node_revision.inc
similarity index 100%
rename from plugins/views_wizard/node_revision.inc
rename to view_ui/plugins/views_wizard/node_revision.inc
diff --git a/plugins/views_wizard/taxonomy_term.inc b/view_ui/plugins/views_wizard/taxonomy_term.inc
similarity index 100%
rename from plugins/views_wizard/taxonomy_term.inc
rename to view_ui/plugins/views_wizard/taxonomy_term.inc
diff --git a/plugins/views_wizard/users.inc b/view_ui/plugins/views_wizard/users.inc
similarity index 100%
rename from plugins/views_wizard/users.inc
rename to view_ui/plugins/views_wizard/users.inc
diff --git a/plugins/views_wizard/views_ui_base_views_wizard.class.php b/view_ui/plugins/views_wizard/views_ui_base_views_wizard.class.php
similarity index 100%
rename from plugins/views_wizard/views_ui_base_views_wizard.class.php
rename to view_ui/plugins/views_wizard/views_ui_base_views_wizard.class.php
diff --git a/plugins/views_wizard/views_ui_comment_views_wizard.class.php b/view_ui/plugins/views_wizard/views_ui_comment_views_wizard.class.php
similarity index 100%
rename from plugins/views_wizard/views_ui_comment_views_wizard.class.php
rename to view_ui/plugins/views_wizard/views_ui_comment_views_wizard.class.php
diff --git a/plugins/views_wizard/views_ui_file_managed_views_wizard.class.php b/view_ui/plugins/views_wizard/views_ui_file_managed_views_wizard.class.php
similarity index 100%
rename from plugins/views_wizard/views_ui_file_managed_views_wizard.class.php
rename to view_ui/plugins/views_wizard/views_ui_file_managed_views_wizard.class.php
diff --git a/plugins/views_wizard/views_ui_node_revision_views_wizard.class.php b/view_ui/plugins/views_wizard/views_ui_node_revision_views_wizard.class.php
similarity index 100%
rename from plugins/views_wizard/views_ui_node_revision_views_wizard.class.php
rename to view_ui/plugins/views_wizard/views_ui_node_revision_views_wizard.class.php
diff --git a/plugins/views_wizard/views_ui_node_views_wizard.class.php b/view_ui/plugins/views_wizard/views_ui_node_views_wizard.class.php
similarity index 100%
rename from plugins/views_wizard/views_ui_node_views_wizard.class.php
rename to view_ui/plugins/views_wizard/views_ui_node_views_wizard.class.php
diff --git a/plugins/views_wizard/views_ui_taxonomy_term_views_wizard.class.php b/view_ui/plugins/views_wizard/views_ui_taxonomy_term_views_wizard.class.php
similarity index 100%
rename from plugins/views_wizard/views_ui_taxonomy_term_views_wizard.class.php
rename to view_ui/plugins/views_wizard/views_ui_taxonomy_term_views_wizard.class.php
diff --git a/plugins/views_wizard/views_ui_users_views_wizard.class.php b/view_ui/plugins/views_wizard/views_ui_users_views_wizard.class.php
similarity index 100%
rename from plugins/views_wizard/views_ui_users_views_wizard.class.php
rename to view_ui/plugins/views_wizard/views_ui_users_views_wizard.class.php
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 87%
rename from views_ui.info
rename to view_ui/views_ui.info
index b131de9..dcd1376 100644
--- a/views_ui.info
+++ b/view_ui/views_ui.info
@@ -4,5 +4,8 @@ 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 d778aa2..1aa91a6 100644
--- a/views.info
+++ b/views.info
@@ -259,4 +259,5 @@ files[] = tests/user/views_handler_field_user_name.test
 files[] = tests/user/views_user_argument_default.test
 files[] = tests/user/views_user_argument_validate.test
 files[] = tests/user/views_user.test
-files[] = tests/views_ui.test
+
+
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'])) {
