From f929cbdf7550f93cfaeceb3d6ea459625263d817 Mon Sep 17 00:00:00 2001
From: Scott Erickson <sderickson@gmail.com>
Date: Fri, 23 Sep 2016 16:30:36 -0700
Subject: [PATCH] Migrate modals and sass files

Note, this leaves a couple templates broken
---
 app/{styles => views/HomeView}/home-view.sass     |  0
 app/{styles => views/TestView}/test-view.sass     |  0
 .../account-settings-view.sass                    |  0
 .../account/InvoicesView}/invoices-view.sass      |  0
 .../MainAccountView}/main-account-view.sass       |  0
 .../PrepaidRedeemModal.coffee                     |  2 +-
 app/views/account/PrepaidRedeemModal/index.coffee |  1 +
 .../PrepaidRedeemModal}/prepaid-redeem-modal.jade |  0
 .../SubscriptionView}/subscription-view.sass      |  0
 .../UnsubscribeView}/unsubscribe-view.sass        |  0
 .../AdministerUserModal.coffee                    |  2 +-
 .../administer-user-modal.jade                    |  0
 .../administer-user-modal.sass                    |  0
 app/views/admin/AdministerUserModal/index.coffee  |  1 +
 .../DesignElementsView}/design-elements-view.sass |  0
 .../artisans/ArtisansView}/artisans-view.sass     |  0
 .../LevelGuidesView}/level-guides-view.sass       |  0
 .../LevelTasksView}/level-tasks-view.sass         |  0
 .../solution-problems-view.sass                   |  0
 .../ThangTasksView}/thang-tasks-view.sass         |  0
 .../level_session_code_view.sass                  |  0
 app/views/core/{ => AuthModal}/AuthModal.coffee   |  4 ++--
 .../views/core/AuthModal}/AuthModal.spec.coffee   |  0
 .../core => views/core/AuthModal}/auth-modal.jade |  0
 .../core/AuthModal}/auth-modal.sass               |  0
 app/views/core/AuthModal/index.coffee             |  1 +
 .../CreateAccountModal/CreateAccountModal.coffee  |  2 +-
 .../CreateAccountModal.spec.coffee                |  0
 .../core/CreateAccountModal}/basic-info-view.sass |  0
 .../choose-account-type-view.sass                 |  0
 .../CreateAccountModal}/confirmation-view.sass    |  0
 .../core/CreateAccountModal}/coppa-deny-view.sass |  0
 .../CreateAccountModal}/create-account-modal.jade |  0
 .../CreateAccountModal}/create-account-modal.sass |  0
 .../core/CreateAccountModal}/extras-view.sass     |  0
 .../CreateAccountModal}/segment-check-view.sass   |  0
 .../core/HeroSelectView}/hero-select-view.sass    |  0
 .../core/{ => RecoverModal}/RecoverModal.coffee   |  2 +-
 app/views/core/RecoverModal/index.coffee          |  1 +
 .../core/RecoverModal}/recover-modal.jade         |  0
 .../core/RecoverModal}/recover-modal.sass         |  0
 .../{ => SubscribeModal}/SubscribeModal.coffee    |  2 +-
 app/views/core/SubscribeModal/index.coffee        |  1 +
 .../core/SubscribeModal}/subscribe-modal.jade     |  0
 .../core/SubscribeModal}/subscribe-modal.sass     |  0
 .../ActivateLicensesModal.coffee                  |  2 +-
 .../ActivateLicensesModal.spec.coffee             |  0
 .../activate-licenses-modal.jade                  |  0
 .../activate-licenses-modal.sass                  |  0
 .../courses/ActivateLicensesModal/index.coffee    |  1 +
 .../ChangeCourseLanguageModal.coffee              |  2 +-
 .../change-course-language-modal.jade             |  0
 .../change-course-language-modal.sass             |  0
 .../ChangeCourseLanguageModal/index.coffee        |  1 +
 .../ChooseLanguageModal.coffee                    |  2 +-
 .../choose-language-modal.jade                    |  0
 .../choose-language-modal.sass                    |  0
 .../courses/ChooseLanguageModal/index.coffee      |  1 +
 .../ClassroomSettingsModal.coffee                 |  2 +-
 .../classroom-settings-modal.jade                 |  0
 .../classroom-settings-modal.sass                 |  0
 .../courses/ClassroomSettingsModal/index.coffee   |  1 +
 .../courses/ClassroomView}/classroom-view.sass    |  0
 .../CoursesNotAssignedModal.coffee                |  2 +-
 .../courses-not-assigned-modal.jade               |  0
 .../courses/CoursesNotAssignedModal/index.coffee  |  1 +
 .../courses-update-account-view.sass              |  0
 .../courses/CoursesView}/courses-view.sass        |  0
 .../EnrollmentsView}/enrollments-view.sass        |  0
 .../{ => HeroSelectModal}/HeroSelectModal.coffee  |  2 +-
 .../HeroSelectModal}/HeroSelectModal.spec.coffee  |  0
 .../HeroSelectModal}/hero-select-modal.jade       |  0
 .../HeroSelectModal}/hero-select-modal.sass       |  0
 app/views/courses/HeroSelectModal/index.coffee    |  1 +
 .../InviteToClassroomModal.coffee                 |  2 +-
 .../InviteToClassroomModal.spec.coffee            |  0
 .../courses/InviteToClassroomModal/index.coffee   |  1 +
 .../invite-to-classroom-modal.jade                |  0
 .../invite-to-classroom-modal.sass                |  0
 .../{ => JoinClassModal}/JoinClassModal.coffee    |  2 +-
 app/views/courses/JoinClassModal/index.coffee     |  1 +
 .../courses/JoinClassModal}/join-class-modal.jade |  0
 .../RemoveStudentModal.coffee                     |  2 +-
 app/views/courses/RemoveStudentModal/index.coffee |  1 +
 .../RemoveStudentModal}/remove-student-modal.jade |  0
 .../RemoveStudentModal}/remove-student-modal.sass |  0
 .../StudentCoursesView}/student-courses-view.sass |  0
 .../TeacherClassView}/teacher-class-view.sass     |  0
 .../TeacherClassesView}/teacher-classes-view.sass |  0
 .../TeacherCoursesView}/teacher-courses-view.sass |  0
 app/views/editor/{ => ForkModal}/ForkModal.coffee |  2 +-
 .../editor/ForkModal}/fork-modal.jade             |  0
 app/views/editor/ForkModal/index.coffee           |  1 +
 .../editor/{ => PatchModal}/PatchModal.coffee     |  2 +-
 .../editor/PatchModal}/PatchModal.spec.coffee     |  0
 app/views/editor/PatchModal/index.coffee          |  1 +
 .../editor/PatchModal}/patch_modal.jade           |  0
 .../CampaignAnalyticsModal.coffee                 |  2 +-
 .../campaign-analytics-modal.jade                 |  0
 .../campaign-analytics-modal.sass                 |  0
 .../campaign/CampaignAnalyticsModal/index.coffee  |  1 +
 .../CampaignEditorView}/campaign-editor-view.sass |  0
 .../CampaignLevelView}/campaign-level-view.sass   |  0
 .../SaveCampaignModal.coffee                      |  2 +-
 .../campaign/SaveCampaignModal/index.coffee       |  1 +
 .../SaveCampaignModal}/save-campaign-modal.jade   |  0
 .../AddThangComponentsModal.coffee                |  2 +-
 .../add-thang-components-modal.jade               |  0
 .../add-thang-components-modal.sass               |  0
 .../AddThangComponentsModal/index.coffee          |  1 +
 .../thang-component-config-view.sass              |  0
 .../thang-components-edit-view.sass               |  0
 .../components-documentation-view.sass            |  0
 .../systems-documentation-view.sass               |  0
 .../LevelFeedbackView}/level-feedback-view.sass   |  0
 .../level-component-edit-view.sass                |  0
 .../ArtisanGuideModal.coffee                      |  2 +-
 .../ArtisanGuideModal}/artisan-guide-modal.jade   |  0
 .../ArtisanGuideModal}/artisan-guide-modal.sass   |  0
 .../level/modals/ArtisanGuideModal/index.coffee   |  1 +
 .../GenerateTerrainModal.coffee                   |  2 +-
 .../generate-terrain-modal.jade                   |  0
 .../generate-terrain-modal.sass                   |  0
 .../modals/GenerateTerrainModal/index.coffee      |  1 +
 .../WorldSelectModal.coffee                       |  2 +-
 .../level/modals/WorldSelectModal/index.coffee    |  1 +
 .../WorldSelectModal}/world-select-modal.jade     |  0
 .../WorldSelectModal}/world-select-modal.sass     |  0
 .../level-system-edit-view.sass                   |  0
 .../systems/SystemsTabView}/systems-tab-view.sass |  0
 .../thangs/AddThangsView}/add-thangs-view.sass    |  0
 .../level-thang-edit-view.sass                    |  0
 .../thangs/ThangsTabView}/thangs-tab-view.sass    |  0
 .../modal/{ => ConfirmModal}/ConfirmModal.coffee  |  4 ++--
 .../editor/modal/ConfirmModal}/confirm-modal.jade |  0
 app/views/editor/modal/ConfirmModal/index.coffee  |  1 +
 .../{ => NewModelModal}/NewModelModal.coffee      |  2 +-
 app/views/editor/modal/NewModelModal/index.coffee |  1 +
 .../modal/NewModelModal}/new-model-modal.jade     |  0
 .../SaveVersionModal.coffee                       |  2 +-
 .../editor/modal/SaveVersionModal/index.coffee    |  1 +
 .../SaveVersionModal}/save-version-modal.jade     |  0
 .../SaveVersionModal}/save-version-modal.sass     |  0
 .../{ => VersionsModal}/VersionsModal.coffee      |  2 +-
 app/views/editor/modal/VersionsModal/index.coffee |  1 +
 .../modal/VersionsModal}/versions-modal.jade      |  0
 .../editor/poll/PollEditView}/poll-edit-view.sass |  0
 .../ExportThangTypeModal.coffee                   |  2 +-
 .../export-thang-type-modal.jade                  |  0
 .../thang/ExportThangTypeModal/index.coffee       |  1 +
 .../ThangTypeEditView}/thang-type-edit-view.sass  |  0
 .../VectorIconSetupModal.coffee                   |  2 +-
 .../thang/VectorIconSetupModal/index.coffee       |  1 +
 .../vector-icon-setup-modal.jade                  |  0
 .../vector-icon-setup-modal.sass                  |  0
 .../verifier/VerifierView}/verifier-view.sass     |  0
 .../ladder/LadderTabView}/ladder-tab-view.sass    |  0
 .../modal/{ => ModelModal}/ModelModal.coffee      |  2 +-
 app/views/modal/ModelModal/index.coffee           |  1 +
 .../modal/ModelModal}/model-modal.jade            |  0
 .../modal/ModelModal}/model-modal.sass            |  0
 .../modal/{ => RevertModal}/RevertModal.coffee    |  2 +-
 app/views/modal/RevertModal/index.coffee          |  1 +
 .../modal/RevertModal}/revert-modal.jade          |  0
 .../modal/RevertModal}/revert-modal.sass          |  0
 .../play/CampaignView}/campaign-view.sass         |  0
 .../level/ControlBarView}/control-bar-view.sass   |  0
 .../level/DuelStatsView}/duel-stats-view.sass     |  0
 .../play/level/HintsView}/hints-view.sass         |  0
 .../LevelDialogueView}/level-dialogue-view.sass   |  0
 .../level/LevelFlagsView}/level-flags-view.sass   |  0
 .../LevelPlaybackView}/level-playback-view.sass   |  0
 .../play-game-dev-level-view.sass                 |  0
 .../level/PlayLevelView}/play-level-view.sass     |  0
 .../play-web-dev-level-view.sass                  |  0
 .../level/WebSurfaceView}/web-surface-view.sass   |  0
 .../CourseVictoryModal.coffee                     |  4 ++--
 .../CourseVictoryModal.fixtures.coffee            |  0
 .../CourseVictoryModal}/course-victory-modal.jade |  0
 .../CourseVictoryModal}/course-victory-modal.sass |  0
 .../level/modal/CourseVictoryModal/index.coffee   |  1 +
 .../GameDevVictoryModal.coffee                    |  2 +-
 .../game-dev-victory-modal.jade                   |  0
 .../game-dev-victory-modal.sass                   |  0
 .../level/modal/GameDevVictoryModal/index.coffee  |  1 +
 .../HeroVictoryModal.coffee                       |  2 +-
 .../HeroVictoryModal}/hero-victory-modal.jade     |  0
 .../HeroVictoryModal}/hero-victory-modal.sass     |  0
 .../level/modal/HeroVictoryModal/index.coffee     |  1 +
 .../ImageGalleryModal.coffee                      |  2 +-
 .../ImageGalleryModal.spec.coffee                 |  0
 .../ImageGalleryModal}/image-gallery-modal.jade   |  0
 .../ImageGalleryModal}/image-gallery-modal.sass   |  0
 .../level/modal/ImageGalleryModal/index.coffee    |  1 +
 .../level/modal/NewItemView}/new-item-view.sass   |  0
 .../level/modal/ProgressView}/progress-view.sass  |  0
 .../ReloadLevelModal.coffee                       |  2 +-
 .../level/modal/ReloadLevelModal/index.coffee     |  1 +
 .../ReloadLevelModal}/reload-level-modal.jade     |  0
 .../SpellPaletteView}/spell-palette-view.sass     |  0
 .../tome/SpellTopBarView}/spell-top-bar-view.sass |  0
 .../menu/{ => GameMenuModal}/GameMenuModal.coffee |  2 +-
 .../play/menu/GameMenuModal}/game-menu-modal.jade |  0
 .../play/menu/GameMenuModal}/game-menu-modal.sass |  0
 app/views/play/menu/GameMenuModal/index.coffee    |  1 +
 .../play/menu/GuideView}/guide-view.sass          |  0
 .../{ => InventoryModal}/InventoryModal.coffee    |  4 ++--
 app/views/play/menu/InventoryModal/index.coffee   |  1 +
 .../menu/InventoryModal}/inventory-modal.jade     |  0
 .../menu/InventoryModal}/inventory-modal.sass     |  0
 .../play/menu/ItemView}/item-view.sass            |  0
 .../play/menu/OptionsView}/options-view.sass      |  0
 .../play/menu/SaveLoadView}/save-load-view.sass   |  0
 .../modal/{ => BuyGemsModal}/BuyGemsModal.coffee  |  2 +-
 .../play/modal/BuyGemsModal}/buy-gems-modal.jade  |  0
 .../play/modal/BuyGemsModal}/buy-gems-modal.sass  |  0
 app/views/play/modal/BuyGemsModal/index.coffee    |  1 +
 .../modal/ItemDetailsView}/item-details-view.sass |  0
 .../LeaderboardModal.coffee                       |  2 +-
 .../play/modal/LeaderboardModal/index.coffee      |  1 +
 .../LeaderboardModal}/leaderboard-modal.jade      |  0
 .../LeaderboardModal}/leaderboard-modal.sass      |  0
 .../LeaderboardTabView}/leaderboard-tab-view.sass |  0
 .../PlayAccountModal.coffee                       |  2 +-
 .../play/modal/PlayAccountModal/index.coffee      |  1 +
 .../PlayAccountModal}/play-account-modal.jade     |  0
 .../PlayAccountModal}/play-account-modal.sass     |  0
 .../PlayAchievementsModal.coffee                  |  2 +-
 .../play/modal/PlayAchievementsModal/index.coffee |  1 +
 .../play-achievements-modal.jade                  |  0
 .../play-achievements-modal.sass                  |  0
 .../{ => PlayHeroesModal}/PlayHeroesModal.coffee  |  2 +-
 app/views/play/modal/PlayHeroesModal/index.coffee |  1 +
 .../modal/PlayHeroesModal}/play-heroes-modal.jade |  0
 .../modal/PlayHeroesModal}/play-heroes-modal.sass |  0
 .../{ => PlayItemsModal}/PlayItemsModal.coffee    |  4 ++--
 app/views/play/modal/PlayItemsModal/index.coffee  |  1 +
 .../modal/PlayItemsModal}/play-items-modal.jade   |  0
 .../modal/PlayItemsModal}/play-items-modal.sass   |  0
 .../PlaySettingsModal.coffee                      |  2 +-
 .../play/modal/PlaySettingsModal/index.coffee     |  1 +
 .../PlaySettingsModal}/play-settings-modal.jade   |  0
 .../PlaySettingsModal}/play-settings-modal.sass   |  0
 .../play/modal/{ => PollModal}/PollModal.coffee   |  2 +-
 app/views/play/modal/PollModal/index.coffee       |  1 +
 .../play/modal/PollModal}/poll-modal.jade         |  0
 .../play/modal/PollModal}/poll-modal.sass         |  0
 .../ShareProgressModal.coffee                     |  2 +-
 .../ShareProgressModal.spec.coffee                |  0
 .../play/modal/ShareProgressModal/index.coffee    |  1 +
 .../ShareProgressModal}/share-progress-modal.jade |  0
 .../ShareProgressModal}/share-progress-modal.sass |  0
 .../EditStudentModal.coffee                       |  2 +-
 .../EditStudentModal.spec.coffee                  |  0
 .../EditStudentModal}/edit-student-modal.jade     |  0
 .../EditStudentModal}/edit-student-modal.sass     |  0
 app/views/teachers/EditStudentModal/index.coffee  |  1 +
 .../HowToEnrollModal.coffee                       |  2 +-
 .../HowToEnrollModal}/how-to-enroll-modal.jade    |  0
 .../HowToEnrollModal}/how-to-enroll-modal.sass    |  0
 app/views/teachers/HowToEnrollModal/index.coffee  |  1 +
 .../markdown-resource-view.sass                   |  0
 .../ResourceHubView}/ResourceHubView.sass         |  0
 .../teacher-course-solution-view.sass             |  0
 .../TeachersContactModal.coffee                   |  2 +-
 .../TeachersContactModal.spec.coffee              |  0
 .../teachers/TeachersContactModal/index.coffee    |  1 +
 .../teachers-contact-modal.jade                   |  0
 .../teachers-contact-modal.sass                   |  0
 .../EmailVerifiedView}/email-verified-view.sass   |  0
 .../user/MainUserView}/main-user-view.sass        |  0
 scripts/reorganizeViews.js                        | 15 ++++++++++++++-
 272 files changed, 118 insertions(+), 56 deletions(-)
 rename app/{styles => views/HomeView}/home-view.sass (100%)
 rename app/{styles => views/TestView}/test-view.sass (100%)
 rename app/{styles/account => views/account/AccountSettingsView}/account-settings-view.sass (100%)
 rename app/{styles/account => views/account/InvoicesView}/invoices-view.sass (100%)
 rename app/{styles/account => views/account/MainAccountView}/main-account-view.sass (100%)
 rename app/views/account/{ => PrepaidRedeemModal}/PrepaidRedeemModal.coffee (89%)
 create mode 100644 app/views/account/PrepaidRedeemModal/index.coffee
 rename app/{templates/account => views/account/PrepaidRedeemModal}/prepaid-redeem-modal.jade (100%)
 rename app/{styles/account => views/account/SubscriptionView}/subscription-view.sass (100%)
 rename app/{styles/account => views/account/UnsubscribeView}/unsubscribe-view.sass (100%)
 rename app/views/admin/{ => AdministerUserModal}/AdministerUserModal.coffee (98%)
 rename app/{templates/admin => views/admin/AdministerUserModal}/administer-user-modal.jade (100%)
 rename app/{styles/admin => views/admin/AdministerUserModal}/administer-user-modal.sass (100%)
 create mode 100644 app/views/admin/AdministerUserModal/index.coffee
 rename app/{styles/admin => views/admin/DesignElementsView}/design-elements-view.sass (100%)
 rename app/{styles/artisans => views/artisans/ArtisansView}/artisans-view.sass (100%)
 rename app/{styles/artisans => views/artisans/LevelGuidesView}/level-guides-view.sass (100%)
 rename app/{styles/artisans => views/artisans/LevelTasksView}/level-tasks-view.sass (100%)
 rename app/{styles/artisans => views/artisans/SolutionProblemsView}/solution-problems-view.sass (100%)
 rename app/{styles/artisans => views/artisans/ThangTasksView}/thang-tasks-view.sass (100%)
 rename app/{styles/common => views/common/LevelSessionCodeView}/level_session_code_view.sass (100%)
 rename app/views/core/{ => AuthModal}/AuthModal.coffee (97%)
 rename {test/app/views/core => app/views/core/AuthModal}/AuthModal.spec.coffee (100%)
 rename app/{templates/core => views/core/AuthModal}/auth-modal.jade (100%)
 rename app/{styles/modal => views/core/AuthModal}/auth-modal.sass (100%)
 create mode 100644 app/views/core/AuthModal/index.coffee
 rename {test/app/views/core => app/views/core/CreateAccountModal}/CreateAccountModal.spec.coffee (100%)
 rename app/{styles/modal/create-account-modal => views/core/CreateAccountModal}/basic-info-view.sass (100%)
 rename app/{styles/modal/create-account-modal => views/core/CreateAccountModal}/choose-account-type-view.sass (100%)
 rename app/{styles/modal/create-account-modal => views/core/CreateAccountModal}/confirmation-view.sass (100%)
 rename app/{styles/modal/create-account-modal => views/core/CreateAccountModal}/coppa-deny-view.sass (100%)
 rename app/{templates/core/create-account-modal => views/core/CreateAccountModal}/create-account-modal.jade (100%)
 rename app/{styles/modal/create-account-modal => views/core/CreateAccountModal}/create-account-modal.sass (100%)
 rename app/{styles/modal/create-account-modal => views/core/CreateAccountModal}/extras-view.sass (100%)
 rename app/{styles/modal/create-account-modal => views/core/CreateAccountModal}/segment-check-view.sass (100%)
 rename app/{styles/core => views/core/HeroSelectView}/hero-select-view.sass (100%)
 rename app/views/core/{ => RecoverModal}/RecoverModal.coffee (96%)
 create mode 100644 app/views/core/RecoverModal/index.coffee
 rename app/{templates/core => views/core/RecoverModal}/recover-modal.jade (100%)
 rename app/{styles/modal => views/core/RecoverModal}/recover-modal.sass (100%)
 rename app/views/core/{ => SubscribeModal}/SubscribeModal.coffee (99%)
 create mode 100644 app/views/core/SubscribeModal/index.coffee
 rename app/{templates/core => views/core/SubscribeModal}/subscribe-modal.jade (100%)
 rename app/{styles/modal => views/core/SubscribeModal}/subscribe-modal.sass (100%)
 rename app/views/courses/{ => ActivateLicensesModal}/ActivateLicensesModal.coffee (98%)
 rename {test/app/views/teachers => app/views/courses/ActivateLicensesModal}/ActivateLicensesModal.spec.coffee (100%)
 rename app/{templates/courses => views/courses/ActivateLicensesModal}/activate-licenses-modal.jade (100%)
 rename app/{styles/courses => views/courses/ActivateLicensesModal}/activate-licenses-modal.sass (100%)
 create mode 100644 app/views/courses/ActivateLicensesModal/index.coffee
 rename app/views/courses/{ => ChangeCourseLanguageModal}/ChangeCourseLanguageModal.coffee (92%)
 rename app/{templates/courses => views/courses/ChangeCourseLanguageModal}/change-course-language-modal.jade (100%)
 rename app/{styles/courses => views/courses/ChangeCourseLanguageModal}/change-course-language-modal.sass (100%)
 create mode 100644 app/views/courses/ChangeCourseLanguageModal/index.coffee
 rename app/views/courses/{ => ChooseLanguageModal}/ChooseLanguageModal.coffee (95%)
 rename app/{templates/courses => views/courses/ChooseLanguageModal}/choose-language-modal.jade (100%)
 rename app/{styles/courses => views/courses/ChooseLanguageModal}/choose-language-modal.sass (100%)
 create mode 100644 app/views/courses/ChooseLanguageModal/index.coffee
 rename app/views/courses/{ => ClassroomSettingsModal}/ClassroomSettingsModal.coffee (97%)
 rename app/{templates/courses => views/courses/ClassroomSettingsModal}/classroom-settings-modal.jade (100%)
 rename app/{styles/courses => views/courses/ClassroomSettingsModal}/classroom-settings-modal.sass (100%)
 create mode 100644 app/views/courses/ClassroomSettingsModal/index.coffee
 rename app/{styles/courses => views/courses/ClassroomView}/classroom-view.sass (100%)
 rename app/views/courses/{ => CoursesNotAssignedModal}/CoursesNotAssignedModal.coffee (81%)
 rename app/{templates/courses => views/courses/CoursesNotAssignedModal}/courses-not-assigned-modal.jade (100%)
 create mode 100644 app/views/courses/CoursesNotAssignedModal/index.coffee
 rename app/{styles/courses => views/courses/CoursesUpdateAccountView}/courses-update-account-view.sass (100%)
 rename app/{styles/courses => views/courses/CoursesView}/courses-view.sass (100%)
 rename app/{styles/courses => views/courses/EnrollmentsView}/enrollments-view.sass (100%)
 rename app/views/courses/{ => HeroSelectModal}/HeroSelectModal.coffee (92%)
 rename {test/app/views/courses => app/views/courses/HeroSelectModal}/HeroSelectModal.spec.coffee (100%)
 rename app/{templates/courses => views/courses/HeroSelectModal}/hero-select-modal.jade (100%)
 rename app/{styles/courses => views/courses/HeroSelectModal}/hero-select-modal.sass (100%)
 create mode 100644 app/views/courses/HeroSelectModal/index.coffee
 rename app/views/courses/{ => InviteToClassroomModal}/InviteToClassroomModal.coffee (95%)
 rename {test/app/views/teachers => app/views/courses/InviteToClassroomModal}/InviteToClassroomModal.spec.coffee (100%)
 create mode 100644 app/views/courses/InviteToClassroomModal/index.coffee
 rename app/{templates/courses => views/courses/InviteToClassroomModal}/invite-to-classroom-modal.jade (100%)
 rename app/{styles/courses => views/courses/InviteToClassroomModal}/invite-to-classroom-modal.sass (100%)
 rename app/views/courses/{ => JoinClassModal}/JoinClassModal.coffee (94%)
 create mode 100644 app/views/courses/JoinClassModal/index.coffee
 rename app/{templates/courses => views/courses/JoinClassModal}/join-class-modal.jade (100%)
 rename app/views/courses/{ => RemoveStudentModal}/RemoveStudentModal.coffee (94%)
 create mode 100644 app/views/courses/RemoveStudentModal/index.coffee
 rename app/{templates/courses => views/courses/RemoveStudentModal}/remove-student-modal.jade (100%)
 rename app/{styles/courses => views/courses/RemoveStudentModal}/remove-student-modal.sass (100%)
 rename app/{styles/courses => views/courses/StudentCoursesView}/student-courses-view.sass (100%)
 rename app/{styles/courses => views/courses/TeacherClassView}/teacher-class-view.sass (100%)
 rename app/{styles/courses => views/courses/TeacherClassesView}/teacher-classes-view.sass (100%)
 rename app/{styles/courses => views/courses/TeacherCoursesView}/teacher-courses-view.sass (100%)
 rename app/views/editor/{ => ForkModal}/ForkModal.coffee (96%)
 rename app/{templates/editor => views/editor/ForkModal}/fork-modal.jade (100%)
 create mode 100644 app/views/editor/ForkModal/index.coffee
 rename app/views/editor/{ => PatchModal}/PatchModal.coffee (97%)
 rename {test/app/views/editor => app/views/editor/PatchModal}/PatchModal.spec.coffee (100%)
 create mode 100644 app/views/editor/PatchModal/index.coffee
 rename app/{templates/editor => views/editor/PatchModal}/patch_modal.jade (100%)
 rename app/views/editor/campaign/{ => CampaignAnalyticsModal}/CampaignAnalyticsModal.coffee (99%)
 rename app/{templates/editor/campaign => views/editor/campaign/CampaignAnalyticsModal}/campaign-analytics-modal.jade (100%)
 rename app/{styles/editor/campaign => views/editor/campaign/CampaignAnalyticsModal}/campaign-analytics-modal.sass (100%)
 create mode 100644 app/views/editor/campaign/CampaignAnalyticsModal/index.coffee
 rename app/{styles/editor/campaign => views/editor/campaign/CampaignEditorView}/campaign-editor-view.sass (100%)
 rename app/{styles/editor/campaign => views/editor/campaign/CampaignLevelView}/campaign-level-view.sass (100%)
 rename app/views/editor/campaign/{ => SaveCampaignModal}/SaveCampaignModal.coffee (95%)
 create mode 100644 app/views/editor/campaign/SaveCampaignModal/index.coffee
 rename app/{templates/editor/campaign => views/editor/campaign/SaveCampaignModal}/save-campaign-modal.jade (100%)
 rename app/views/editor/component/{ => AddThangComponentsModal}/AddThangComponentsModal.coffee (95%)
 rename app/{templates/editor/component => views/editor/component/AddThangComponentsModal}/add-thang-components-modal.jade (100%)
 rename app/{styles/editor/component => views/editor/component/AddThangComponentsModal}/add-thang-components-modal.sass (100%)
 create mode 100644 app/views/editor/component/AddThangComponentsModal/index.coffee
 rename app/{styles/editor/component => views/editor/component/ThangComponentConfigView}/thang-component-config-view.sass (100%)
 rename app/{styles/editor/component => views/editor/component/ThangComponentsEditView}/thang-components-edit-view.sass (100%)
 rename app/{styles/docs => views/editor/docs/ComponentsDocumentationView}/components-documentation-view.sass (100%)
 rename app/{styles/docs => views/editor/docs/SystemsDocumentationView}/systems-documentation-view.sass (100%)
 rename app/{styles/editor/level => views/editor/level/LevelFeedbackView}/level-feedback-view.sass (100%)
 rename app/{styles/editor/level/component => views/editor/level/components/LevelComponentEditView}/level-component-edit-view.sass (100%)
 rename app/views/editor/level/modals/{ => ArtisanGuideModal}/ArtisanGuideModal.coffee (96%)
 rename app/{templates/editor/level/modal => views/editor/level/modals/ArtisanGuideModal}/artisan-guide-modal.jade (100%)
 rename app/{styles/editor/level/modal => views/editor/level/modals/ArtisanGuideModal}/artisan-guide-modal.sass (100%)
 create mode 100644 app/views/editor/level/modals/ArtisanGuideModal/index.coffee
 rename app/views/editor/level/modals/{ => GenerateTerrainModal}/GenerateTerrainModal.coffee (99%)
 rename app/{templates/editor/level/modal => views/editor/level/modals/GenerateTerrainModal}/generate-terrain-modal.jade (100%)
 rename app/{styles/editor/level/modal => views/editor/level/modals/GenerateTerrainModal}/generate-terrain-modal.sass (100%)
 create mode 100644 app/views/editor/level/modals/GenerateTerrainModal/index.coffee
 rename app/views/editor/level/modals/{ => WorldSelectModal}/WorldSelectModal.coffee (97%)
 create mode 100644 app/views/editor/level/modals/WorldSelectModal/index.coffee
 rename app/{templates/editor/level/modal => views/editor/level/modals/WorldSelectModal}/world-select-modal.jade (100%)
 rename app/{styles/editor/level/modal => views/editor/level/modals/WorldSelectModal}/world-select-modal.sass (100%)
 rename app/{styles/editor/level/system => views/editor/level/systems/LevelSystemEditView}/level-system-edit-view.sass (100%)
 rename app/{styles/editor/level => views/editor/level/systems/SystemsTabView}/systems-tab-view.sass (100%)
 rename app/{styles/editor/level => views/editor/level/thangs/AddThangsView}/add-thangs-view.sass (100%)
 rename app/{styles/editor/level/thang => views/editor/level/thangs/LevelThangEditView}/level-thang-edit-view.sass (100%)
 rename app/{styles/editor/level => views/editor/level/thangs/ThangsTabView}/thangs-tab-view.sass (100%)
 rename app/views/editor/modal/{ => ConfirmModal}/ConfirmModal.coffee (81%)
 rename app/{templates/editor/modal => views/editor/modal/ConfirmModal}/confirm-modal.jade (100%)
 create mode 100644 app/views/editor/modal/ConfirmModal/index.coffee
 rename app/views/editor/modal/{ => NewModelModal}/NewModelModal.coffee (96%)
 create mode 100644 app/views/editor/modal/NewModelModal/index.coffee
 rename app/{templates/editor/modal => views/editor/modal/NewModelModal}/new-model-modal.jade (100%)
 rename app/views/editor/modal/{ => SaveVersionModal}/SaveVersionModal.coffee (97%)
 create mode 100644 app/views/editor/modal/SaveVersionModal/index.coffee
 rename app/{templates/editor/modal => views/editor/modal/SaveVersionModal}/save-version-modal.jade (100%)
 rename app/{styles/modal => views/editor/modal/SaveVersionModal}/save-version-modal.sass (100%)
 rename app/views/editor/modal/{ => VersionsModal}/VersionsModal.coffee (97%)
 create mode 100644 app/views/editor/modal/VersionsModal/index.coffee
 rename app/{templates/editor/modal => views/editor/modal/VersionsModal}/versions-modal.jade (100%)
 rename app/{styles/editor/poll => views/editor/poll/PollEditView}/poll-edit-view.sass (100%)
 rename app/views/editor/thang/{ => ExportThangTypeModal}/ExportThangTypeModal.coffee (97%)
 rename app/{templates/editor/thang => views/editor/thang/ExportThangTypeModal}/export-thang-type-modal.jade (100%)
 create mode 100644 app/views/editor/thang/ExportThangTypeModal/index.coffee
 rename app/{styles/editor/thang => views/editor/thang/ThangTypeEditView}/thang-type-edit-view.sass (100%)
 rename app/views/editor/thang/{ => VectorIconSetupModal}/VectorIconSetupModal.coffee (97%)
 create mode 100644 app/views/editor/thang/VectorIconSetupModal/index.coffee
 rename app/{templates/editor/thang => views/editor/thang/VectorIconSetupModal}/vector-icon-setup-modal.jade (100%)
 rename app/{styles/editor/thang => views/editor/thang/VectorIconSetupModal}/vector-icon-setup-modal.sass (100%)
 rename app/{styles/editor/verifier => views/editor/verifier/VerifierView}/verifier-view.sass (100%)
 rename app/{styles/play/ladder => views/ladder/LadderTabView}/ladder-tab-view.sass (100%)
 rename app/views/modal/{ => ModelModal}/ModelModal.coffee (98%)
 create mode 100644 app/views/modal/ModelModal/index.coffee
 rename app/{templates/modal => views/modal/ModelModal}/model-modal.jade (100%)
 rename app/{styles/modal => views/modal/ModelModal}/model-modal.sass (100%)
 rename app/views/modal/{ => RevertModal}/RevertModal.coffee (92%)
 create mode 100644 app/views/modal/RevertModal/index.coffee
 rename app/{templates/modal => views/modal/RevertModal}/revert-modal.jade (100%)
 rename app/{styles/modal => views/modal/RevertModal}/revert-modal.sass (100%)
 rename app/{styles/play => views/play/CampaignView}/campaign-view.sass (100%)
 rename app/{styles/play/level => views/play/level/ControlBarView}/control-bar-view.sass (100%)
 rename app/{styles/play/level => views/play/level/DuelStatsView}/duel-stats-view.sass (100%)
 rename app/{styles/play/level => views/play/level/HintsView}/hints-view.sass (100%)
 rename app/{styles/play/level => views/play/level/LevelDialogueView}/level-dialogue-view.sass (100%)
 rename app/{styles/play/level => views/play/level/LevelFlagsView}/level-flags-view.sass (100%)
 rename app/{styles/play/level => views/play/level/LevelPlaybackView}/level-playback-view.sass (100%)
 rename app/{styles/play/level => views/play/level/PlayGameDevLevelView}/play-game-dev-level-view.sass (100%)
 rename app/{styles/play => views/play/level/PlayLevelView}/play-level-view.sass (100%)
 rename app/{styles/play/level => views/play/level/PlayWebDevLevelView}/play-web-dev-level-view.sass (100%)
 rename app/{styles/play/level => views/play/level/WebSurfaceView}/web-surface-view.sass (100%)
 rename app/views/play/level/modal/{ => CourseVictoryModal}/CourseVictoryModal.coffee (97%)
 rename {test/app/views/play/level/modal => app/views/play/level/modal/CourseVictoryModal}/CourseVictoryModal.fixtures.coffee (100%)
 rename app/{templates/play/level/modal => views/play/level/modal/CourseVictoryModal}/course-victory-modal.jade (100%)
 rename app/{styles/play/level/modal => views/play/level/modal/CourseVictoryModal}/course-victory-modal.sass (100%)
 create mode 100644 app/views/play/level/modal/CourseVictoryModal/index.coffee
 rename app/views/play/level/modal/{ => GameDevVictoryModal}/GameDevVictoryModal.coffee (91%)
 rename app/{templates/play/level/modal => views/play/level/modal/GameDevVictoryModal}/game-dev-victory-modal.jade (100%)
 rename app/{styles/play/level/modal => views/play/level/modal/GameDevVictoryModal}/game-dev-victory-modal.sass (100%)
 create mode 100644 app/views/play/level/modal/GameDevVictoryModal/index.coffee
 rename app/views/play/level/modal/{ => HeroVictoryModal}/HeroVictoryModal.coffee (99%)
 rename app/{templates/play/level/modal => views/play/level/modal/HeroVictoryModal}/hero-victory-modal.jade (100%)
 rename app/{styles/play/level/modal => views/play/level/modal/HeroVictoryModal}/hero-victory-modal.sass (100%)
 create mode 100644 app/views/play/level/modal/HeroVictoryModal/index.coffee
 rename app/views/play/level/modal/{ => ImageGalleryModal}/ImageGalleryModal.coffee (99%)
 rename {test/app/views/play/level/modal => app/views/play/level/modal/ImageGalleryModal}/ImageGalleryModal.spec.coffee (100%)
 rename app/{templates/play/level/modal => views/play/level/modal/ImageGalleryModal}/image-gallery-modal.jade (100%)
 rename app/{styles/play/modal => views/play/level/modal/ImageGalleryModal}/image-gallery-modal.sass (100%)
 create mode 100644 app/views/play/level/modal/ImageGalleryModal/index.coffee
 rename app/{styles/play/level/modal => views/play/level/modal/NewItemView}/new-item-view.sass (100%)
 rename app/{styles/play/level/modal => views/play/level/modal/ProgressView}/progress-view.sass (100%)
 rename app/views/play/level/modal/{ => ReloadLevelModal}/ReloadLevelModal.coffee (86%)
 create mode 100644 app/views/play/level/modal/ReloadLevelModal/index.coffee
 rename app/{templates/play/level/modal => views/play/level/modal/ReloadLevelModal}/reload-level-modal.jade (100%)
 rename app/{styles/play/level/tome => views/play/level/tome/SpellPaletteView}/spell-palette-view.sass (100%)
 rename app/{styles/play/level/tome => views/play/level/tome/SpellTopBarView}/spell-top-bar-view.sass (100%)
 rename app/views/play/menu/{ => GameMenuModal}/GameMenuModal.coffee (98%)
 rename app/{templates/play/menu => views/play/menu/GameMenuModal}/game-menu-modal.jade (100%)
 rename app/{styles/play/menu => views/play/menu/GameMenuModal}/game-menu-modal.sass (100%)
 create mode 100644 app/views/play/menu/GameMenuModal/index.coffee
 rename app/{styles/play/menu => views/play/menu/GuideView}/guide-view.sass (100%)
 rename app/views/play/menu/{ => InventoryModal}/InventoryModal.coffee (99%)
 create mode 100644 app/views/play/menu/InventoryModal/index.coffee
 rename app/{templates/play/menu => views/play/menu/InventoryModal}/inventory-modal.jade (100%)
 rename app/{styles/play/menu => views/play/menu/InventoryModal}/inventory-modal.sass (100%)
 rename app/{styles/play/menu => views/play/menu/ItemView}/item-view.sass (100%)
 rename app/{styles/play/menu => views/play/menu/OptionsView}/options-view.sass (100%)
 rename app/{styles/play/menu => views/play/menu/SaveLoadView}/save-load-view.sass (100%)
 rename app/views/play/modal/{ => BuyGemsModal}/BuyGemsModal.coffee (98%)
 rename app/{templates/play/modal => views/play/modal/BuyGemsModal}/buy-gems-modal.jade (100%)
 rename app/{styles/play/modal => views/play/modal/BuyGemsModal}/buy-gems-modal.sass (100%)
 create mode 100644 app/views/play/modal/BuyGemsModal/index.coffee
 rename app/{styles/play/modal => views/play/modal/ItemDetailsView}/item-details-view.sass (100%)
 rename app/views/play/modal/{ => LeaderboardModal}/LeaderboardModal.coffee (97%)
 create mode 100644 app/views/play/modal/LeaderboardModal/index.coffee
 rename app/{templates/play/modal => views/play/modal/LeaderboardModal}/leaderboard-modal.jade (100%)
 rename app/{styles/play/modal => views/play/modal/LeaderboardModal}/leaderboard-modal.sass (100%)
 rename app/{styles/play/modal => views/play/modal/LeaderboardTabView}/leaderboard-tab-view.sass (100%)
 rename app/views/play/modal/{ => PlayAccountModal}/PlayAccountModal.coffee (96%)
 create mode 100644 app/views/play/modal/PlayAccountModal/index.coffee
 rename app/{templates/play/modal => views/play/modal/PlayAccountModal}/play-account-modal.jade (100%)
 rename app/{styles/play/modal => views/play/modal/PlayAccountModal}/play-account-modal.sass (100%)
 rename app/views/play/modal/{ => PlayAchievementsModal}/PlayAchievementsModal.coffee (98%)
 create mode 100644 app/views/play/modal/PlayAchievementsModal/index.coffee
 rename app/{templates/play/modal => views/play/modal/PlayAchievementsModal}/play-achievements-modal.jade (100%)
 rename app/{styles/play/modal => views/play/modal/PlayAchievementsModal}/play-achievements-modal.sass (100%)
 rename app/views/play/modal/{ => PlayHeroesModal}/PlayHeroesModal.coffee (99%)
 create mode 100644 app/views/play/modal/PlayHeroesModal/index.coffee
 rename app/{templates/play/modal => views/play/modal/PlayHeroesModal}/play-heroes-modal.jade (100%)
 rename app/{styles/play/modal => views/play/modal/PlayHeroesModal}/play-heroes-modal.sass (100%)
 rename app/views/play/modal/{ => PlayItemsModal}/PlayItemsModal.coffee (98%)
 create mode 100644 app/views/play/modal/PlayItemsModal/index.coffee
 rename app/{templates/play/modal => views/play/modal/PlayItemsModal}/play-items-modal.jade (100%)
 rename app/{styles/play/modal => views/play/modal/PlayItemsModal}/play-items-modal.sass (100%)
 rename app/views/play/modal/{ => PlaySettingsModal}/PlaySettingsModal.coffee (89%)
 create mode 100644 app/views/play/modal/PlaySettingsModal/index.coffee
 rename app/{templates/play/modal => views/play/modal/PlaySettingsModal}/play-settings-modal.jade (100%)
 rename app/{styles/play/modal => views/play/modal/PlaySettingsModal}/play-settings-modal.sass (100%)
 rename app/views/play/modal/{ => PollModal}/PollModal.coffee (98%)
 create mode 100644 app/views/play/modal/PollModal/index.coffee
 rename app/{templates/play/modal => views/play/modal/PollModal}/poll-modal.jade (100%)
 rename app/{styles/play/modal => views/play/modal/PollModal}/poll-modal.sass (100%)
 rename app/views/play/modal/{ => ShareProgressModal}/ShareProgressModal.coffee (92%)
 rename {test/app/views/play/level/modal => app/views/play/modal/ShareProgressModal}/ShareProgressModal.spec.coffee (100%)
 create mode 100644 app/views/play/modal/ShareProgressModal/index.coffee
 rename app/{templates/play/modal => views/play/modal/ShareProgressModal}/share-progress-modal.jade (100%)
 rename app/{styles/play/modal => views/play/modal/ShareProgressModal}/share-progress-modal.sass (100%)
 rename app/views/teachers/{ => EditStudentModal}/EditStudentModal.coffee (96%)
 rename {test/app/views/teachers => app/views/teachers/EditStudentModal}/EditStudentModal.spec.coffee (100%)
 rename app/{templates/teachers => views/teachers/EditStudentModal}/edit-student-modal.jade (100%)
 rename app/{styles/teachers => views/teachers/EditStudentModal}/edit-student-modal.sass (100%)
 create mode 100644 app/views/teachers/EditStudentModal/index.coffee
 rename app/views/teachers/{ => HowToEnrollModal}/HowToEnrollModal.coffee (68%)
 rename app/{templates/teachers => views/teachers/HowToEnrollModal}/how-to-enroll-modal.jade (100%)
 rename app/{styles/teachers => views/teachers/HowToEnrollModal}/how-to-enroll-modal.sass (100%)
 create mode 100644 app/views/teachers/HowToEnrollModal/index.coffee
 rename app/{styles/teachers => views/teachers/MarkdownResourceView}/markdown-resource-view.sass (100%)
 rename app/{styles/teachers => views/teachers/ResourceHubView}/ResourceHubView.sass (100%)
 rename app/{styles/teachers => views/teachers/TeacherCourseSolutionView}/teacher-course-solution-view.sass (100%)
 rename app/views/teachers/{ => TeachersContactModal}/TeachersContactModal.coffee (97%)
 rename {test/app/views/courses => app/views/teachers/TeachersContactModal}/TeachersContactModal.spec.coffee (100%)
 create mode 100644 app/views/teachers/TeachersContactModal/index.coffee
 rename app/{templates/teachers => views/teachers/TeachersContactModal}/teachers-contact-modal.jade (100%)
 rename app/{styles/teachers => views/teachers/TeachersContactModal}/teachers-contact-modal.sass (100%)
 rename app/{styles/user => views/user/EmailVerifiedView}/email-verified-view.sass (100%)
 rename app/{styles/user => views/user/MainUserView}/main-user-view.sass (100%)

diff --git a/app/styles/home-view.sass b/app/views/HomeView/home-view.sass
similarity index 100%
rename from app/styles/home-view.sass
rename to app/views/HomeView/home-view.sass
diff --git a/app/styles/test-view.sass b/app/views/TestView/test-view.sass
similarity index 100%
rename from app/styles/test-view.sass
rename to app/views/TestView/test-view.sass
diff --git a/app/styles/account/account-settings-view.sass b/app/views/account/AccountSettingsView/account-settings-view.sass
similarity index 100%
rename from app/styles/account/account-settings-view.sass
rename to app/views/account/AccountSettingsView/account-settings-view.sass
diff --git a/app/styles/account/invoices-view.sass b/app/views/account/InvoicesView/invoices-view.sass
similarity index 100%
rename from app/styles/account/invoices-view.sass
rename to app/views/account/InvoicesView/invoices-view.sass
diff --git a/app/styles/account/main-account-view.sass b/app/views/account/MainAccountView/main-account-view.sass
similarity index 100%
rename from app/styles/account/main-account-view.sass
rename to app/views/account/MainAccountView/main-account-view.sass
diff --git a/app/views/account/PrepaidRedeemModal.coffee b/app/views/account/PrepaidRedeemModal/PrepaidRedeemModal.coffee
similarity index 89%
rename from app/views/account/PrepaidRedeemModal.coffee
rename to app/views/account/PrepaidRedeemModal/PrepaidRedeemModal.coffee
index cf729cbcd..58dfff9c2 100644
--- a/app/views/account/PrepaidRedeemModal.coffee
+++ b/app/views/account/PrepaidRedeemModal/PrepaidRedeemModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/account/prepaid-redeem-modal'
+template = require './prepaid-redeem-modal'
 {me} = require 'core/auth'
 
 
diff --git a/app/views/account/PrepaidRedeemModal/index.coffee b/app/views/account/PrepaidRedeemModal/index.coffee
new file mode 100644
index 000000000..0fe08cd07
--- /dev/null
+++ b/app/views/account/PrepaidRedeemModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './PrepaidRedeemModal'
\ No newline at end of file
diff --git a/app/templates/account/prepaid-redeem-modal.jade b/app/views/account/PrepaidRedeemModal/prepaid-redeem-modal.jade
similarity index 100%
rename from app/templates/account/prepaid-redeem-modal.jade
rename to app/views/account/PrepaidRedeemModal/prepaid-redeem-modal.jade
diff --git a/app/styles/account/subscription-view.sass b/app/views/account/SubscriptionView/subscription-view.sass
similarity index 100%
rename from app/styles/account/subscription-view.sass
rename to app/views/account/SubscriptionView/subscription-view.sass
diff --git a/app/styles/account/unsubscribe-view.sass b/app/views/account/UnsubscribeView/unsubscribe-view.sass
similarity index 100%
rename from app/styles/account/unsubscribe-view.sass
rename to app/views/account/UnsubscribeView/unsubscribe-view.sass
diff --git a/app/views/admin/AdministerUserModal.coffee b/app/views/admin/AdministerUserModal/AdministerUserModal.coffee
similarity index 98%
rename from app/views/admin/AdministerUserModal.coffee
rename to app/views/admin/AdministerUserModal/AdministerUserModal.coffee
index 62497a25c..71c869744 100644
--- a/app/views/admin/AdministerUserModal.coffee
+++ b/app/views/admin/AdministerUserModal/AdministerUserModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/admin/administer-user-modal'
+template = require './administer-user-modal'
 User = require 'models/User'
 Prepaid = require 'models/Prepaid'
 StripeCoupons = require 'collections/StripeCoupons'
diff --git a/app/templates/admin/administer-user-modal.jade b/app/views/admin/AdministerUserModal/administer-user-modal.jade
similarity index 100%
rename from app/templates/admin/administer-user-modal.jade
rename to app/views/admin/AdministerUserModal/administer-user-modal.jade
diff --git a/app/styles/admin/administer-user-modal.sass b/app/views/admin/AdministerUserModal/administer-user-modal.sass
similarity index 100%
rename from app/styles/admin/administer-user-modal.sass
rename to app/views/admin/AdministerUserModal/administer-user-modal.sass
diff --git a/app/views/admin/AdministerUserModal/index.coffee b/app/views/admin/AdministerUserModal/index.coffee
new file mode 100644
index 000000000..ede5552af
--- /dev/null
+++ b/app/views/admin/AdministerUserModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './AdministerUserModal'
\ No newline at end of file
diff --git a/app/styles/admin/design-elements-view.sass b/app/views/admin/DesignElementsView/design-elements-view.sass
similarity index 100%
rename from app/styles/admin/design-elements-view.sass
rename to app/views/admin/DesignElementsView/design-elements-view.sass
diff --git a/app/styles/artisans/artisans-view.sass b/app/views/artisans/ArtisansView/artisans-view.sass
similarity index 100%
rename from app/styles/artisans/artisans-view.sass
rename to app/views/artisans/ArtisansView/artisans-view.sass
diff --git a/app/styles/artisans/level-guides-view.sass b/app/views/artisans/LevelGuidesView/level-guides-view.sass
similarity index 100%
rename from app/styles/artisans/level-guides-view.sass
rename to app/views/artisans/LevelGuidesView/level-guides-view.sass
diff --git a/app/styles/artisans/level-tasks-view.sass b/app/views/artisans/LevelTasksView/level-tasks-view.sass
similarity index 100%
rename from app/styles/artisans/level-tasks-view.sass
rename to app/views/artisans/LevelTasksView/level-tasks-view.sass
diff --git a/app/styles/artisans/solution-problems-view.sass b/app/views/artisans/SolutionProblemsView/solution-problems-view.sass
similarity index 100%
rename from app/styles/artisans/solution-problems-view.sass
rename to app/views/artisans/SolutionProblemsView/solution-problems-view.sass
diff --git a/app/styles/artisans/thang-tasks-view.sass b/app/views/artisans/ThangTasksView/thang-tasks-view.sass
similarity index 100%
rename from app/styles/artisans/thang-tasks-view.sass
rename to app/views/artisans/ThangTasksView/thang-tasks-view.sass
diff --git a/app/styles/common/level_session_code_view.sass b/app/views/common/LevelSessionCodeView/level_session_code_view.sass
similarity index 100%
rename from app/styles/common/level_session_code_view.sass
rename to app/views/common/LevelSessionCodeView/level_session_code_view.sass
diff --git a/app/views/core/AuthModal.coffee b/app/views/core/AuthModal/AuthModal.coffee
similarity index 97%
rename from app/views/core/AuthModal.coffee
rename to app/views/core/AuthModal/AuthModal.coffee
index 6632a0c5a..3ee3690ff 100644
--- a/app/views/core/AuthModal.coffee
+++ b/app/views/core/AuthModal/AuthModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/core/auth-modal'
+template = require './auth-modal'
 forms = require 'core/forms'
 User = require 'models/User'
 application  = require 'core/application'
@@ -37,7 +37,7 @@ module.exports = class AuthModal extends ModalView
     _.delay (=> $('input:visible:first', @$el).focus()), 500
 
   onSignupInstead: (e) ->
-    CreateAccountModal = require('./CreateAccountModal')
+    CreateAccountModal = require('../CreateAccountModal')
     modal = new CreateAccountModal({initialValues: forms.formToObject @$el})
     currentView.openModalView(modal)
 
diff --git a/test/app/views/core/AuthModal.spec.coffee b/app/views/core/AuthModal/AuthModal.spec.coffee
similarity index 100%
rename from test/app/views/core/AuthModal.spec.coffee
rename to app/views/core/AuthModal/AuthModal.spec.coffee
diff --git a/app/templates/core/auth-modal.jade b/app/views/core/AuthModal/auth-modal.jade
similarity index 100%
rename from app/templates/core/auth-modal.jade
rename to app/views/core/AuthModal/auth-modal.jade
diff --git a/app/styles/modal/auth-modal.sass b/app/views/core/AuthModal/auth-modal.sass
similarity index 100%
rename from app/styles/modal/auth-modal.sass
rename to app/views/core/AuthModal/auth-modal.sass
diff --git a/app/views/core/AuthModal/index.coffee b/app/views/core/AuthModal/index.coffee
new file mode 100644
index 000000000..2712aca83
--- /dev/null
+++ b/app/views/core/AuthModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './AuthModal'
\ No newline at end of file
diff --git a/app/views/core/CreateAccountModal/CreateAccountModal.coffee b/app/views/core/CreateAccountModal/CreateAccountModal.coffee
index c8e7ce0ab..1564c8f98 100644
--- a/app/views/core/CreateAccountModal/CreateAccountModal.coffee
+++ b/app/views/core/CreateAccountModal/CreateAccountModal.coffee
@@ -9,7 +9,7 @@ SingleSignOnConfirmView = require './SingleSignOnConfirmView'
 ExtrasView = require './ExtrasView'
 ConfirmationView = require './ConfirmationView'
 State = require 'models/State'
-template = require 'templates/core/create-account-modal/create-account-modal'
+template = require './create-account-modal'
 forms = require 'core/forms'
 User = require 'models/User'
 application  = require 'core/application'
diff --git a/test/app/views/core/CreateAccountModal.spec.coffee b/app/views/core/CreateAccountModal/CreateAccountModal.spec.coffee
similarity index 100%
rename from test/app/views/core/CreateAccountModal.spec.coffee
rename to app/views/core/CreateAccountModal/CreateAccountModal.spec.coffee
diff --git a/app/styles/modal/create-account-modal/basic-info-view.sass b/app/views/core/CreateAccountModal/basic-info-view.sass
similarity index 100%
rename from app/styles/modal/create-account-modal/basic-info-view.sass
rename to app/views/core/CreateAccountModal/basic-info-view.sass
diff --git a/app/styles/modal/create-account-modal/choose-account-type-view.sass b/app/views/core/CreateAccountModal/choose-account-type-view.sass
similarity index 100%
rename from app/styles/modal/create-account-modal/choose-account-type-view.sass
rename to app/views/core/CreateAccountModal/choose-account-type-view.sass
diff --git a/app/styles/modal/create-account-modal/confirmation-view.sass b/app/views/core/CreateAccountModal/confirmation-view.sass
similarity index 100%
rename from app/styles/modal/create-account-modal/confirmation-view.sass
rename to app/views/core/CreateAccountModal/confirmation-view.sass
diff --git a/app/styles/modal/create-account-modal/coppa-deny-view.sass b/app/views/core/CreateAccountModal/coppa-deny-view.sass
similarity index 100%
rename from app/styles/modal/create-account-modal/coppa-deny-view.sass
rename to app/views/core/CreateAccountModal/coppa-deny-view.sass
diff --git a/app/templates/core/create-account-modal/create-account-modal.jade b/app/views/core/CreateAccountModal/create-account-modal.jade
similarity index 100%
rename from app/templates/core/create-account-modal/create-account-modal.jade
rename to app/views/core/CreateAccountModal/create-account-modal.jade
diff --git a/app/styles/modal/create-account-modal/create-account-modal.sass b/app/views/core/CreateAccountModal/create-account-modal.sass
similarity index 100%
rename from app/styles/modal/create-account-modal/create-account-modal.sass
rename to app/views/core/CreateAccountModal/create-account-modal.sass
diff --git a/app/styles/modal/create-account-modal/extras-view.sass b/app/views/core/CreateAccountModal/extras-view.sass
similarity index 100%
rename from app/styles/modal/create-account-modal/extras-view.sass
rename to app/views/core/CreateAccountModal/extras-view.sass
diff --git a/app/styles/modal/create-account-modal/segment-check-view.sass b/app/views/core/CreateAccountModal/segment-check-view.sass
similarity index 100%
rename from app/styles/modal/create-account-modal/segment-check-view.sass
rename to app/views/core/CreateAccountModal/segment-check-view.sass
diff --git a/app/styles/core/hero-select-view.sass b/app/views/core/HeroSelectView/hero-select-view.sass
similarity index 100%
rename from app/styles/core/hero-select-view.sass
rename to app/views/core/HeroSelectView/hero-select-view.sass
diff --git a/app/views/core/RecoverModal.coffee b/app/views/core/RecoverModal/RecoverModal.coffee
similarity index 96%
rename from app/views/core/RecoverModal.coffee
rename to app/views/core/RecoverModal/RecoverModal.coffee
index 21358a634..1daaa1032 100644
--- a/app/views/core/RecoverModal.coffee
+++ b/app/views/core/RecoverModal/RecoverModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/core/recover-modal'
+template = require './recover-modal'
 forms = require 'core/forms'
 {genericFailure} = require 'core/errors'
 
diff --git a/app/views/core/RecoverModal/index.coffee b/app/views/core/RecoverModal/index.coffee
new file mode 100644
index 000000000..9753a5444
--- /dev/null
+++ b/app/views/core/RecoverModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './RecoverModal'
\ No newline at end of file
diff --git a/app/templates/core/recover-modal.jade b/app/views/core/RecoverModal/recover-modal.jade
similarity index 100%
rename from app/templates/core/recover-modal.jade
rename to app/views/core/RecoverModal/recover-modal.jade
diff --git a/app/styles/modal/recover-modal.sass b/app/views/core/RecoverModal/recover-modal.sass
similarity index 100%
rename from app/styles/modal/recover-modal.sass
rename to app/views/core/RecoverModal/recover-modal.sass
diff --git a/app/views/core/SubscribeModal.coffee b/app/views/core/SubscribeModal/SubscribeModal.coffee
similarity index 99%
rename from app/views/core/SubscribeModal.coffee
rename to app/views/core/SubscribeModal/SubscribeModal.coffee
index 2addc1dea..b3fa4f8b7 100644
--- a/app/views/core/SubscribeModal.coffee
+++ b/app/views/core/SubscribeModal/SubscribeModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/core/subscribe-modal'
+template = require './subscribe-modal'
 stripeHandler = require 'core/services/stripe'
 utils = require 'core/utils'
 CreateAccountModal = require 'views/core/CreateAccountModal'
diff --git a/app/views/core/SubscribeModal/index.coffee b/app/views/core/SubscribeModal/index.coffee
new file mode 100644
index 000000000..e031af3b6
--- /dev/null
+++ b/app/views/core/SubscribeModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './SubscribeModal'
\ No newline at end of file
diff --git a/app/templates/core/subscribe-modal.jade b/app/views/core/SubscribeModal/subscribe-modal.jade
similarity index 100%
rename from app/templates/core/subscribe-modal.jade
rename to app/views/core/SubscribeModal/subscribe-modal.jade
diff --git a/app/styles/modal/subscribe-modal.sass b/app/views/core/SubscribeModal/subscribe-modal.sass
similarity index 100%
rename from app/styles/modal/subscribe-modal.sass
rename to app/views/core/SubscribeModal/subscribe-modal.sass
diff --git a/app/views/courses/ActivateLicensesModal.coffee b/app/views/courses/ActivateLicensesModal/ActivateLicensesModal.coffee
similarity index 98%
rename from app/views/courses/ActivateLicensesModal.coffee
rename to app/views/courses/ActivateLicensesModal/ActivateLicensesModal.coffee
index a1bf8afa5..90f929cfb 100644
--- a/app/views/courses/ActivateLicensesModal.coffee
+++ b/app/views/courses/ActivateLicensesModal/ActivateLicensesModal.coffee
@@ -1,6 +1,6 @@
 ModalView = require 'views/core/ModalView'
 State = require 'models/State'
-template = require 'templates/courses/activate-licenses-modal'
+template = require './activate-licenses-modal'
 CocoCollection = require 'collections/CocoCollection'
 Prepaids = require 'collections/Prepaids'
 Classroom = require 'models/Classroom'
diff --git a/test/app/views/teachers/ActivateLicensesModal.spec.coffee b/app/views/courses/ActivateLicensesModal/ActivateLicensesModal.spec.coffee
similarity index 100%
rename from test/app/views/teachers/ActivateLicensesModal.spec.coffee
rename to app/views/courses/ActivateLicensesModal/ActivateLicensesModal.spec.coffee
diff --git a/app/templates/courses/activate-licenses-modal.jade b/app/views/courses/ActivateLicensesModal/activate-licenses-modal.jade
similarity index 100%
rename from app/templates/courses/activate-licenses-modal.jade
rename to app/views/courses/ActivateLicensesModal/activate-licenses-modal.jade
diff --git a/app/styles/courses/activate-licenses-modal.sass b/app/views/courses/ActivateLicensesModal/activate-licenses-modal.sass
similarity index 100%
rename from app/styles/courses/activate-licenses-modal.sass
rename to app/views/courses/ActivateLicensesModal/activate-licenses-modal.sass
diff --git a/app/views/courses/ActivateLicensesModal/index.coffee b/app/views/courses/ActivateLicensesModal/index.coffee
new file mode 100644
index 000000000..0c8f12178
--- /dev/null
+++ b/app/views/courses/ActivateLicensesModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ActivateLicensesModal'
\ No newline at end of file
diff --git a/app/views/courses/ChangeCourseLanguageModal.coffee b/app/views/courses/ChangeCourseLanguageModal/ChangeCourseLanguageModal.coffee
similarity index 92%
rename from app/views/courses/ChangeCourseLanguageModal.coffee
rename to app/views/courses/ChangeCourseLanguageModal/ChangeCourseLanguageModal.coffee
index feddf9dad..3b2271bee 100644
--- a/app/views/courses/ChangeCourseLanguageModal.coffee
+++ b/app/views/courses/ChangeCourseLanguageModal/ChangeCourseLanguageModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/courses/change-course-language-modal'
+template = require './change-course-language-modal'
 
 module.exports = class ChangeCourseLanguageModal extends ModalView
   id: 'change-course-language-modal'
diff --git a/app/templates/courses/change-course-language-modal.jade b/app/views/courses/ChangeCourseLanguageModal/change-course-language-modal.jade
similarity index 100%
rename from app/templates/courses/change-course-language-modal.jade
rename to app/views/courses/ChangeCourseLanguageModal/change-course-language-modal.jade
diff --git a/app/styles/courses/change-course-language-modal.sass b/app/views/courses/ChangeCourseLanguageModal/change-course-language-modal.sass
similarity index 100%
rename from app/styles/courses/change-course-language-modal.sass
rename to app/views/courses/ChangeCourseLanguageModal/change-course-language-modal.sass
diff --git a/app/views/courses/ChangeCourseLanguageModal/index.coffee b/app/views/courses/ChangeCourseLanguageModal/index.coffee
new file mode 100644
index 000000000..d735a1294
--- /dev/null
+++ b/app/views/courses/ChangeCourseLanguageModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ChangeCourseLanguageModal'
\ No newline at end of file
diff --git a/app/views/courses/ChooseLanguageModal.coffee b/app/views/courses/ChooseLanguageModal/ChooseLanguageModal.coffee
similarity index 95%
rename from app/views/courses/ChooseLanguageModal.coffee
rename to app/views/courses/ChooseLanguageModal/ChooseLanguageModal.coffee
index 549582105..39bcde18d 100644
--- a/app/views/courses/ChooseLanguageModal.coffee
+++ b/app/views/courses/ChooseLanguageModal/ChooseLanguageModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/courses/choose-language-modal'
+template = require './choose-language-modal'
 
 module.exports = class ChooseLanguageModal extends ModalView
   id: 'choose-language-modal'
diff --git a/app/templates/courses/choose-language-modal.jade b/app/views/courses/ChooseLanguageModal/choose-language-modal.jade
similarity index 100%
rename from app/templates/courses/choose-language-modal.jade
rename to app/views/courses/ChooseLanguageModal/choose-language-modal.jade
diff --git a/app/styles/courses/choose-language-modal.sass b/app/views/courses/ChooseLanguageModal/choose-language-modal.sass
similarity index 100%
rename from app/styles/courses/choose-language-modal.sass
rename to app/views/courses/ChooseLanguageModal/choose-language-modal.sass
diff --git a/app/views/courses/ChooseLanguageModal/index.coffee b/app/views/courses/ChooseLanguageModal/index.coffee
new file mode 100644
index 000000000..35a287108
--- /dev/null
+++ b/app/views/courses/ChooseLanguageModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ChooseLanguageModal'
\ No newline at end of file
diff --git a/app/views/courses/ClassroomSettingsModal.coffee b/app/views/courses/ClassroomSettingsModal/ClassroomSettingsModal.coffee
similarity index 97%
rename from app/views/courses/ClassroomSettingsModal.coffee
rename to app/views/courses/ClassroomSettingsModal/ClassroomSettingsModal.coffee
index ddcfdf6c4..f9a9bd92a 100644
--- a/app/views/courses/ClassroomSettingsModal.coffee
+++ b/app/views/courses/ClassroomSettingsModal/ClassroomSettingsModal.coffee
@@ -1,6 +1,6 @@
 Classroom = require 'models/Classroom'
 ModalView = require 'views/core/ModalView'
-template = require 'templates/courses/classroom-settings-modal'
+template = require './classroom-settings-modal'
 forms = require 'core/forms'
 errors = require 'core/errors'
 
diff --git a/app/templates/courses/classroom-settings-modal.jade b/app/views/courses/ClassroomSettingsModal/classroom-settings-modal.jade
similarity index 100%
rename from app/templates/courses/classroom-settings-modal.jade
rename to app/views/courses/ClassroomSettingsModal/classroom-settings-modal.jade
diff --git a/app/styles/courses/classroom-settings-modal.sass b/app/views/courses/ClassroomSettingsModal/classroom-settings-modal.sass
similarity index 100%
rename from app/styles/courses/classroom-settings-modal.sass
rename to app/views/courses/ClassroomSettingsModal/classroom-settings-modal.sass
diff --git a/app/views/courses/ClassroomSettingsModal/index.coffee b/app/views/courses/ClassroomSettingsModal/index.coffee
new file mode 100644
index 000000000..6bf0fb9b7
--- /dev/null
+++ b/app/views/courses/ClassroomSettingsModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ClassroomSettingsModal'
\ No newline at end of file
diff --git a/app/styles/courses/classroom-view.sass b/app/views/courses/ClassroomView/classroom-view.sass
similarity index 100%
rename from app/styles/courses/classroom-view.sass
rename to app/views/courses/ClassroomView/classroom-view.sass
diff --git a/app/views/courses/CoursesNotAssignedModal.coffee b/app/views/courses/CoursesNotAssignedModal/CoursesNotAssignedModal.coffee
similarity index 81%
rename from app/views/courses/CoursesNotAssignedModal.coffee
rename to app/views/courses/CoursesNotAssignedModal/CoursesNotAssignedModal.coffee
index c20e527e6..fcd4be956 100644
--- a/app/views/courses/CoursesNotAssignedModal.coffee
+++ b/app/views/courses/CoursesNotAssignedModal/CoursesNotAssignedModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/courses/courses-not-assigned-modal'
+template = require './courses-not-assigned-modal'
 
 module.exports = class CoursesNotAssignedModal extends ModalView
   id: 'courses-not-assigned-modal'
diff --git a/app/templates/courses/courses-not-assigned-modal.jade b/app/views/courses/CoursesNotAssignedModal/courses-not-assigned-modal.jade
similarity index 100%
rename from app/templates/courses/courses-not-assigned-modal.jade
rename to app/views/courses/CoursesNotAssignedModal/courses-not-assigned-modal.jade
diff --git a/app/views/courses/CoursesNotAssignedModal/index.coffee b/app/views/courses/CoursesNotAssignedModal/index.coffee
new file mode 100644
index 000000000..3af695fe0
--- /dev/null
+++ b/app/views/courses/CoursesNotAssignedModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './CoursesNotAssignedModal'
\ No newline at end of file
diff --git a/app/styles/courses/courses-update-account-view.sass b/app/views/courses/CoursesUpdateAccountView/courses-update-account-view.sass
similarity index 100%
rename from app/styles/courses/courses-update-account-view.sass
rename to app/views/courses/CoursesUpdateAccountView/courses-update-account-view.sass
diff --git a/app/styles/courses/courses-view.sass b/app/views/courses/CoursesView/courses-view.sass
similarity index 100%
rename from app/styles/courses/courses-view.sass
rename to app/views/courses/CoursesView/courses-view.sass
diff --git a/app/styles/courses/enrollments-view.sass b/app/views/courses/EnrollmentsView/enrollments-view.sass
similarity index 100%
rename from app/styles/courses/enrollments-view.sass
rename to app/views/courses/EnrollmentsView/enrollments-view.sass
diff --git a/app/views/courses/HeroSelectModal.coffee b/app/views/courses/HeroSelectModal/HeroSelectModal.coffee
similarity index 92%
rename from app/views/courses/HeroSelectModal.coffee
rename to app/views/courses/HeroSelectModal/HeroSelectModal.coffee
index 350f24364..062bd2ad5 100644
--- a/app/views/courses/HeroSelectModal.coffee
+++ b/app/views/courses/HeroSelectModal/HeroSelectModal.coffee
@@ -1,6 +1,6 @@
 ModalView = require 'views/core/ModalView'
 HeroSelectView = require 'views/core/HeroSelectView'
-template = require 'templates/courses/hero-select-modal'
+template = require './hero-select-modal'
 Classroom = require 'models/Classroom'
 ThangTypes = require 'collections/ThangTypes'
 State = require 'models/State'
diff --git a/test/app/views/courses/HeroSelectModal.spec.coffee b/app/views/courses/HeroSelectModal/HeroSelectModal.spec.coffee
similarity index 100%
rename from test/app/views/courses/HeroSelectModal.spec.coffee
rename to app/views/courses/HeroSelectModal/HeroSelectModal.spec.coffee
diff --git a/app/templates/courses/hero-select-modal.jade b/app/views/courses/HeroSelectModal/hero-select-modal.jade
similarity index 100%
rename from app/templates/courses/hero-select-modal.jade
rename to app/views/courses/HeroSelectModal/hero-select-modal.jade
diff --git a/app/styles/courses/hero-select-modal.sass b/app/views/courses/HeroSelectModal/hero-select-modal.sass
similarity index 100%
rename from app/styles/courses/hero-select-modal.sass
rename to app/views/courses/HeroSelectModal/hero-select-modal.sass
diff --git a/app/views/courses/HeroSelectModal/index.coffee b/app/views/courses/HeroSelectModal/index.coffee
new file mode 100644
index 000000000..6d72f6a07
--- /dev/null
+++ b/app/views/courses/HeroSelectModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './HeroSelectModal'
\ No newline at end of file
diff --git a/app/views/courses/InviteToClassroomModal.coffee b/app/views/courses/InviteToClassroomModal/InviteToClassroomModal.coffee
similarity index 95%
rename from app/views/courses/InviteToClassroomModal.coffee
rename to app/views/courses/InviteToClassroomModal/InviteToClassroomModal.coffee
index ddf8177fc..78f791bcb 100644
--- a/app/views/courses/InviteToClassroomModal.coffee
+++ b/app/views/courses/InviteToClassroomModal/InviteToClassroomModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/courses/invite-to-classroom-modal'
+template = require './invite-to-classroom-modal'
 
 module.exports = class InviteToClassroomModal extends ModalView
   id: 'invite-to-classroom-modal'
diff --git a/test/app/views/teachers/InviteToClassroomModal.spec.coffee b/app/views/courses/InviteToClassroomModal/InviteToClassroomModal.spec.coffee
similarity index 100%
rename from test/app/views/teachers/InviteToClassroomModal.spec.coffee
rename to app/views/courses/InviteToClassroomModal/InviteToClassroomModal.spec.coffee
diff --git a/app/views/courses/InviteToClassroomModal/index.coffee b/app/views/courses/InviteToClassroomModal/index.coffee
new file mode 100644
index 000000000..4fc10cfa8
--- /dev/null
+++ b/app/views/courses/InviteToClassroomModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './InviteToClassroomModal'
\ No newline at end of file
diff --git a/app/templates/courses/invite-to-classroom-modal.jade b/app/views/courses/InviteToClassroomModal/invite-to-classroom-modal.jade
similarity index 100%
rename from app/templates/courses/invite-to-classroom-modal.jade
rename to app/views/courses/InviteToClassroomModal/invite-to-classroom-modal.jade
diff --git a/app/styles/courses/invite-to-classroom-modal.sass b/app/views/courses/InviteToClassroomModal/invite-to-classroom-modal.sass
similarity index 100%
rename from app/styles/courses/invite-to-classroom-modal.sass
rename to app/views/courses/InviteToClassroomModal/invite-to-classroom-modal.sass
diff --git a/app/views/courses/JoinClassModal.coffee b/app/views/courses/JoinClassModal/JoinClassModal.coffee
similarity index 94%
rename from app/views/courses/JoinClassModal.coffee
rename to app/views/courses/JoinClassModal/JoinClassModal.coffee
index b4abc8c24..4c74db7df 100644
--- a/app/views/courses/JoinClassModal.coffee
+++ b/app/views/courses/JoinClassModal/JoinClassModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/courses/join-class-modal'
+template = require './join-class-modal'
 Classroom = require 'models/Classroom'
 User = require 'models/User'
 
diff --git a/app/views/courses/JoinClassModal/index.coffee b/app/views/courses/JoinClassModal/index.coffee
new file mode 100644
index 000000000..e498ada5b
--- /dev/null
+++ b/app/views/courses/JoinClassModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './JoinClassModal'
\ No newline at end of file
diff --git a/app/templates/courses/join-class-modal.jade b/app/views/courses/JoinClassModal/join-class-modal.jade
similarity index 100%
rename from app/templates/courses/join-class-modal.jade
rename to app/views/courses/JoinClassModal/join-class-modal.jade
diff --git a/app/views/courses/RemoveStudentModal.coffee b/app/views/courses/RemoveStudentModal/RemoveStudentModal.coffee
similarity index 94%
rename from app/views/courses/RemoveStudentModal.coffee
rename to app/views/courses/RemoveStudentModal/RemoveStudentModal.coffee
index 6a99b0b7f..35ce8df95 100644
--- a/app/views/courses/RemoveStudentModal.coffee
+++ b/app/views/courses/RemoveStudentModal/RemoveStudentModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/courses/remove-student-modal'
+template = require './remove-student-modal'
 
 module.exports = class RemoveStudentModal extends ModalView
   id: 'remove-student-modal'
diff --git a/app/views/courses/RemoveStudentModal/index.coffee b/app/views/courses/RemoveStudentModal/index.coffee
new file mode 100644
index 000000000..267ae4020
--- /dev/null
+++ b/app/views/courses/RemoveStudentModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './RemoveStudentModal'
\ No newline at end of file
diff --git a/app/templates/courses/remove-student-modal.jade b/app/views/courses/RemoveStudentModal/remove-student-modal.jade
similarity index 100%
rename from app/templates/courses/remove-student-modal.jade
rename to app/views/courses/RemoveStudentModal/remove-student-modal.jade
diff --git a/app/styles/courses/remove-student-modal.sass b/app/views/courses/RemoveStudentModal/remove-student-modal.sass
similarity index 100%
rename from app/styles/courses/remove-student-modal.sass
rename to app/views/courses/RemoveStudentModal/remove-student-modal.sass
diff --git a/app/styles/courses/student-courses-view.sass b/app/views/courses/StudentCoursesView/student-courses-view.sass
similarity index 100%
rename from app/styles/courses/student-courses-view.sass
rename to app/views/courses/StudentCoursesView/student-courses-view.sass
diff --git a/app/styles/courses/teacher-class-view.sass b/app/views/courses/TeacherClassView/teacher-class-view.sass
similarity index 100%
rename from app/styles/courses/teacher-class-view.sass
rename to app/views/courses/TeacherClassView/teacher-class-view.sass
diff --git a/app/styles/courses/teacher-classes-view.sass b/app/views/courses/TeacherClassesView/teacher-classes-view.sass
similarity index 100%
rename from app/styles/courses/teacher-classes-view.sass
rename to app/views/courses/TeacherClassesView/teacher-classes-view.sass
diff --git a/app/styles/courses/teacher-courses-view.sass b/app/views/courses/TeacherCoursesView/teacher-courses-view.sass
similarity index 100%
rename from app/styles/courses/teacher-courses-view.sass
rename to app/views/courses/TeacherCoursesView/teacher-courses-view.sass
diff --git a/app/views/editor/ForkModal.coffee b/app/views/editor/ForkModal/ForkModal.coffee
similarity index 96%
rename from app/views/editor/ForkModal.coffee
rename to app/views/editor/ForkModal/ForkModal.coffee
index e6ab13eb4..1a587c28a 100644
--- a/app/views/editor/ForkModal.coffee
+++ b/app/views/editor/ForkModal/ForkModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/fork-modal'
+template = require './fork-modal'
 forms = require 'core/forms'
 
 module.exports = class ForkModal extends ModalView
diff --git a/app/templates/editor/fork-modal.jade b/app/views/editor/ForkModal/fork-modal.jade
similarity index 100%
rename from app/templates/editor/fork-modal.jade
rename to app/views/editor/ForkModal/fork-modal.jade
diff --git a/app/views/editor/ForkModal/index.coffee b/app/views/editor/ForkModal/index.coffee
new file mode 100644
index 000000000..5135867bd
--- /dev/null
+++ b/app/views/editor/ForkModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ForkModal'
\ No newline at end of file
diff --git a/app/views/editor/PatchModal.coffee b/app/views/editor/PatchModal/PatchModal.coffee
similarity index 97%
rename from app/views/editor/PatchModal.coffee
rename to app/views/editor/PatchModal/PatchModal.coffee
index bd78cface..1b5c431e8 100644
--- a/app/views/editor/PatchModal.coffee
+++ b/app/views/editor/PatchModal/PatchModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/patch_modal'
+template = require './patch_modal'
 DeltaView = require 'views/editor/DeltaView'
 auth = require 'core/auth'
 deltasLib = require 'core/deltas'
diff --git a/test/app/views/editor/PatchModal.spec.coffee b/app/views/editor/PatchModal/PatchModal.spec.coffee
similarity index 100%
rename from test/app/views/editor/PatchModal.spec.coffee
rename to app/views/editor/PatchModal/PatchModal.spec.coffee
diff --git a/app/views/editor/PatchModal/index.coffee b/app/views/editor/PatchModal/index.coffee
new file mode 100644
index 000000000..fea7a3d0a
--- /dev/null
+++ b/app/views/editor/PatchModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './PatchModal'
\ No newline at end of file
diff --git a/app/templates/editor/patch_modal.jade b/app/views/editor/PatchModal/patch_modal.jade
similarity index 100%
rename from app/templates/editor/patch_modal.jade
rename to app/views/editor/PatchModal/patch_modal.jade
diff --git a/app/views/editor/campaign/CampaignAnalyticsModal.coffee b/app/views/editor/campaign/CampaignAnalyticsModal/CampaignAnalyticsModal.coffee
similarity index 99%
rename from app/views/editor/campaign/CampaignAnalyticsModal.coffee
rename to app/views/editor/campaign/CampaignAnalyticsModal/CampaignAnalyticsModal.coffee
index b4070ee00..3610a1c19 100644
--- a/app/views/editor/campaign/CampaignAnalyticsModal.coffee
+++ b/app/views/editor/campaign/CampaignAnalyticsModal/CampaignAnalyticsModal.coffee
@@ -1,4 +1,4 @@
-template = require 'templates/editor/campaign/campaign-analytics-modal'
+template = require './campaign-analytics-modal'
 utils = require 'core/utils'
 require 'vendor/d3'
 ModalView = require 'views/core/ModalView'
diff --git a/app/templates/editor/campaign/campaign-analytics-modal.jade b/app/views/editor/campaign/CampaignAnalyticsModal/campaign-analytics-modal.jade
similarity index 100%
rename from app/templates/editor/campaign/campaign-analytics-modal.jade
rename to app/views/editor/campaign/CampaignAnalyticsModal/campaign-analytics-modal.jade
diff --git a/app/styles/editor/campaign/campaign-analytics-modal.sass b/app/views/editor/campaign/CampaignAnalyticsModal/campaign-analytics-modal.sass
similarity index 100%
rename from app/styles/editor/campaign/campaign-analytics-modal.sass
rename to app/views/editor/campaign/CampaignAnalyticsModal/campaign-analytics-modal.sass
diff --git a/app/views/editor/campaign/CampaignAnalyticsModal/index.coffee b/app/views/editor/campaign/CampaignAnalyticsModal/index.coffee
new file mode 100644
index 000000000..4b2cd4c6f
--- /dev/null
+++ b/app/views/editor/campaign/CampaignAnalyticsModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './CampaignAnalyticsModal'
\ No newline at end of file
diff --git a/app/styles/editor/campaign/campaign-editor-view.sass b/app/views/editor/campaign/CampaignEditorView/campaign-editor-view.sass
similarity index 100%
rename from app/styles/editor/campaign/campaign-editor-view.sass
rename to app/views/editor/campaign/CampaignEditorView/campaign-editor-view.sass
diff --git a/app/styles/editor/campaign/campaign-level-view.sass b/app/views/editor/campaign/CampaignLevelView/campaign-level-view.sass
similarity index 100%
rename from app/styles/editor/campaign/campaign-level-view.sass
rename to app/views/editor/campaign/CampaignLevelView/campaign-level-view.sass
diff --git a/app/views/editor/campaign/SaveCampaignModal.coffee b/app/views/editor/campaign/SaveCampaignModal/SaveCampaignModal.coffee
similarity index 95%
rename from app/views/editor/campaign/SaveCampaignModal.coffee
rename to app/views/editor/campaign/SaveCampaignModal/SaveCampaignModal.coffee
index 9e7b51aca..567e7f44a 100644
--- a/app/views/editor/campaign/SaveCampaignModal.coffee
+++ b/app/views/editor/campaign/SaveCampaignModal/SaveCampaignModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/campaign/save-campaign-modal'
+template = require './save-campaign-modal'
 DeltaView = require 'views/editor/DeltaView'
 
 module.exports = class SaveCampaignModal extends ModalView
diff --git a/app/views/editor/campaign/SaveCampaignModal/index.coffee b/app/views/editor/campaign/SaveCampaignModal/index.coffee
new file mode 100644
index 000000000..92e9bf6d5
--- /dev/null
+++ b/app/views/editor/campaign/SaveCampaignModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './SaveCampaignModal'
\ No newline at end of file
diff --git a/app/templates/editor/campaign/save-campaign-modal.jade b/app/views/editor/campaign/SaveCampaignModal/save-campaign-modal.jade
similarity index 100%
rename from app/templates/editor/campaign/save-campaign-modal.jade
rename to app/views/editor/campaign/SaveCampaignModal/save-campaign-modal.jade
diff --git a/app/views/editor/component/AddThangComponentsModal.coffee b/app/views/editor/component/AddThangComponentsModal/AddThangComponentsModal.coffee
similarity index 95%
rename from app/views/editor/component/AddThangComponentsModal.coffee
rename to app/views/editor/component/AddThangComponentsModal/AddThangComponentsModal.coffee
index 7ff2d170b..390e65181 100644
--- a/app/views/editor/component/AddThangComponentsModal.coffee
+++ b/app/views/editor/component/AddThangComponentsModal/AddThangComponentsModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/component/add-thang-components-modal'
+template = require './add-thang-components-modal'
 CocoCollection = require 'collections/CocoCollection'
 LevelComponent = require 'models/LevelComponent'
 
diff --git a/app/templates/editor/component/add-thang-components-modal.jade b/app/views/editor/component/AddThangComponentsModal/add-thang-components-modal.jade
similarity index 100%
rename from app/templates/editor/component/add-thang-components-modal.jade
rename to app/views/editor/component/AddThangComponentsModal/add-thang-components-modal.jade
diff --git a/app/styles/editor/component/add-thang-components-modal.sass b/app/views/editor/component/AddThangComponentsModal/add-thang-components-modal.sass
similarity index 100%
rename from app/styles/editor/component/add-thang-components-modal.sass
rename to app/views/editor/component/AddThangComponentsModal/add-thang-components-modal.sass
diff --git a/app/views/editor/component/AddThangComponentsModal/index.coffee b/app/views/editor/component/AddThangComponentsModal/index.coffee
new file mode 100644
index 000000000..e8223f9b8
--- /dev/null
+++ b/app/views/editor/component/AddThangComponentsModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './AddThangComponentsModal'
\ No newline at end of file
diff --git a/app/styles/editor/component/thang-component-config-view.sass b/app/views/editor/component/ThangComponentConfigView/thang-component-config-view.sass
similarity index 100%
rename from app/styles/editor/component/thang-component-config-view.sass
rename to app/views/editor/component/ThangComponentConfigView/thang-component-config-view.sass
diff --git a/app/styles/editor/component/thang-components-edit-view.sass b/app/views/editor/component/ThangComponentsEditView/thang-components-edit-view.sass
similarity index 100%
rename from app/styles/editor/component/thang-components-edit-view.sass
rename to app/views/editor/component/ThangComponentsEditView/thang-components-edit-view.sass
diff --git a/app/styles/docs/components-documentation-view.sass b/app/views/editor/docs/ComponentsDocumentationView/components-documentation-view.sass
similarity index 100%
rename from app/styles/docs/components-documentation-view.sass
rename to app/views/editor/docs/ComponentsDocumentationView/components-documentation-view.sass
diff --git a/app/styles/docs/systems-documentation-view.sass b/app/views/editor/docs/SystemsDocumentationView/systems-documentation-view.sass
similarity index 100%
rename from app/styles/docs/systems-documentation-view.sass
rename to app/views/editor/docs/SystemsDocumentationView/systems-documentation-view.sass
diff --git a/app/styles/editor/level/level-feedback-view.sass b/app/views/editor/level/LevelFeedbackView/level-feedback-view.sass
similarity index 100%
rename from app/styles/editor/level/level-feedback-view.sass
rename to app/views/editor/level/LevelFeedbackView/level-feedback-view.sass
diff --git a/app/styles/editor/level/component/level-component-edit-view.sass b/app/views/editor/level/components/LevelComponentEditView/level-component-edit-view.sass
similarity index 100%
rename from app/styles/editor/level/component/level-component-edit-view.sass
rename to app/views/editor/level/components/LevelComponentEditView/level-component-edit-view.sass
diff --git a/app/views/editor/level/modals/ArtisanGuideModal.coffee b/app/views/editor/level/modals/ArtisanGuideModal/ArtisanGuideModal.coffee
similarity index 96%
rename from app/views/editor/level/modals/ArtisanGuideModal.coffee
rename to app/views/editor/level/modals/ArtisanGuideModal/ArtisanGuideModal.coffee
index 58c82a59f..6758f0801 100644
--- a/app/views/editor/level/modals/ArtisanGuideModal.coffee
+++ b/app/views/editor/level/modals/ArtisanGuideModal/ArtisanGuideModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/level/modal/artisan-guide-modal'
+template = require './artisan-guide-modal'
 
 forms = require 'core/forms'
 {sendContactMessage} = require 'core/contact'
diff --git a/app/templates/editor/level/modal/artisan-guide-modal.jade b/app/views/editor/level/modals/ArtisanGuideModal/artisan-guide-modal.jade
similarity index 100%
rename from app/templates/editor/level/modal/artisan-guide-modal.jade
rename to app/views/editor/level/modals/ArtisanGuideModal/artisan-guide-modal.jade
diff --git a/app/styles/editor/level/modal/artisan-guide-modal.sass b/app/views/editor/level/modals/ArtisanGuideModal/artisan-guide-modal.sass
similarity index 100%
rename from app/styles/editor/level/modal/artisan-guide-modal.sass
rename to app/views/editor/level/modals/ArtisanGuideModal/artisan-guide-modal.sass
diff --git a/app/views/editor/level/modals/ArtisanGuideModal/index.coffee b/app/views/editor/level/modals/ArtisanGuideModal/index.coffee
new file mode 100644
index 000000000..25aa2d1a0
--- /dev/null
+++ b/app/views/editor/level/modals/ArtisanGuideModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ArtisanGuideModal'
\ No newline at end of file
diff --git a/app/views/editor/level/modals/GenerateTerrainModal.coffee b/app/views/editor/level/modals/GenerateTerrainModal/GenerateTerrainModal.coffee
similarity index 99%
rename from app/views/editor/level/modals/GenerateTerrainModal.coffee
rename to app/views/editor/level/modals/GenerateTerrainModal/GenerateTerrainModal.coffee
index 9f95db954..7237fad9c 100644
--- a/app/views/editor/level/modals/GenerateTerrainModal.coffee
+++ b/app/views/editor/level/modals/GenerateTerrainModal/GenerateTerrainModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/level/modal/generate-terrain-modal'
+template = require './generate-terrain-modal'
 CocoModel = require 'models/CocoModel'
 
 clusters = {
diff --git a/app/templates/editor/level/modal/generate-terrain-modal.jade b/app/views/editor/level/modals/GenerateTerrainModal/generate-terrain-modal.jade
similarity index 100%
rename from app/templates/editor/level/modal/generate-terrain-modal.jade
rename to app/views/editor/level/modals/GenerateTerrainModal/generate-terrain-modal.jade
diff --git a/app/styles/editor/level/modal/generate-terrain-modal.sass b/app/views/editor/level/modals/GenerateTerrainModal/generate-terrain-modal.sass
similarity index 100%
rename from app/styles/editor/level/modal/generate-terrain-modal.sass
rename to app/views/editor/level/modals/GenerateTerrainModal/generate-terrain-modal.sass
diff --git a/app/views/editor/level/modals/GenerateTerrainModal/index.coffee b/app/views/editor/level/modals/GenerateTerrainModal/index.coffee
new file mode 100644
index 000000000..8d3a06343
--- /dev/null
+++ b/app/views/editor/level/modals/GenerateTerrainModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './GenerateTerrainModal'
\ No newline at end of file
diff --git a/app/views/editor/level/modals/WorldSelectModal.coffee b/app/views/editor/level/modals/WorldSelectModal/WorldSelectModal.coffee
similarity index 97%
rename from app/views/editor/level/modals/WorldSelectModal.coffee
rename to app/views/editor/level/modals/WorldSelectModal/WorldSelectModal.coffee
index 35dd8d36b..63c38ed2b 100644
--- a/app/views/editor/level/modals/WorldSelectModal.coffee
+++ b/app/views/editor/level/modals/WorldSelectModal/WorldSelectModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/level/modal/world-select-modal'
+template = require './world-select-modal'
 Surface = require 'lib/surface/Surface'
 ThangType = require 'models/ThangType'
 
diff --git a/app/views/editor/level/modals/WorldSelectModal/index.coffee b/app/views/editor/level/modals/WorldSelectModal/index.coffee
new file mode 100644
index 000000000..79a40919b
--- /dev/null
+++ b/app/views/editor/level/modals/WorldSelectModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './WorldSelectModal'
\ No newline at end of file
diff --git a/app/templates/editor/level/modal/world-select-modal.jade b/app/views/editor/level/modals/WorldSelectModal/world-select-modal.jade
similarity index 100%
rename from app/templates/editor/level/modal/world-select-modal.jade
rename to app/views/editor/level/modals/WorldSelectModal/world-select-modal.jade
diff --git a/app/styles/editor/level/modal/world-select-modal.sass b/app/views/editor/level/modals/WorldSelectModal/world-select-modal.sass
similarity index 100%
rename from app/styles/editor/level/modal/world-select-modal.sass
rename to app/views/editor/level/modals/WorldSelectModal/world-select-modal.sass
diff --git a/app/styles/editor/level/system/level-system-edit-view.sass b/app/views/editor/level/systems/LevelSystemEditView/level-system-edit-view.sass
similarity index 100%
rename from app/styles/editor/level/system/level-system-edit-view.sass
rename to app/views/editor/level/systems/LevelSystemEditView/level-system-edit-view.sass
diff --git a/app/styles/editor/level/systems-tab-view.sass b/app/views/editor/level/systems/SystemsTabView/systems-tab-view.sass
similarity index 100%
rename from app/styles/editor/level/systems-tab-view.sass
rename to app/views/editor/level/systems/SystemsTabView/systems-tab-view.sass
diff --git a/app/styles/editor/level/add-thangs-view.sass b/app/views/editor/level/thangs/AddThangsView/add-thangs-view.sass
similarity index 100%
rename from app/styles/editor/level/add-thangs-view.sass
rename to app/views/editor/level/thangs/AddThangsView/add-thangs-view.sass
diff --git a/app/styles/editor/level/thang/level-thang-edit-view.sass b/app/views/editor/level/thangs/LevelThangEditView/level-thang-edit-view.sass
similarity index 100%
rename from app/styles/editor/level/thang/level-thang-edit-view.sass
rename to app/views/editor/level/thangs/LevelThangEditView/level-thang-edit-view.sass
diff --git a/app/styles/editor/level/thangs-tab-view.sass b/app/views/editor/level/thangs/ThangsTabView/thangs-tab-view.sass
similarity index 100%
rename from app/styles/editor/level/thangs-tab-view.sass
rename to app/views/editor/level/thangs/ThangsTabView/thangs-tab-view.sass
diff --git a/app/views/editor/modal/ConfirmModal.coffee b/app/views/editor/modal/ConfirmModal/ConfirmModal.coffee
similarity index 81%
rename from app/views/editor/modal/ConfirmModal.coffee
rename to app/views/editor/modal/ConfirmModal/ConfirmModal.coffee
index 9812a0801..8203c398c 100644
--- a/app/views/editor/modal/ConfirmModal.coffee
+++ b/app/views/editor/modal/ConfirmModal/ConfirmModal.coffee
@@ -1,5 +1,5 @@
-ModalView = require '../../core/ModalView'
-template = require 'templates/editor/modal/confirm-modal'
+ModalView = require '../../../core/ModalView'
+template = require './confirm-modal'
 
 module.exports = class ConfirmModal extends ModalView
   id: 'confirm-modal'
diff --git a/app/templates/editor/modal/confirm-modal.jade b/app/views/editor/modal/ConfirmModal/confirm-modal.jade
similarity index 100%
rename from app/templates/editor/modal/confirm-modal.jade
rename to app/views/editor/modal/ConfirmModal/confirm-modal.jade
diff --git a/app/views/editor/modal/ConfirmModal/index.coffee b/app/views/editor/modal/ConfirmModal/index.coffee
new file mode 100644
index 000000000..377707785
--- /dev/null
+++ b/app/views/editor/modal/ConfirmModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ConfirmModal'
\ No newline at end of file
diff --git a/app/views/editor/modal/NewModelModal.coffee b/app/views/editor/modal/NewModelModal/NewModelModal.coffee
similarity index 96%
rename from app/views/editor/modal/NewModelModal.coffee
rename to app/views/editor/modal/NewModelModal/NewModelModal.coffee
index ea2b3776d..2854b7832 100644
--- a/app/views/editor/modal/NewModelModal.coffee
+++ b/app/views/editor/modal/NewModelModal/NewModelModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/modal/new-model-modal'
+template = require './new-model-modal'
 forms = require 'core/forms'
 
 module.exports = class NewModelModal extends ModalView
diff --git a/app/views/editor/modal/NewModelModal/index.coffee b/app/views/editor/modal/NewModelModal/index.coffee
new file mode 100644
index 000000000..a042765bb
--- /dev/null
+++ b/app/views/editor/modal/NewModelModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './NewModelModal'
\ No newline at end of file
diff --git a/app/templates/editor/modal/new-model-modal.jade b/app/views/editor/modal/NewModelModal/new-model-modal.jade
similarity index 100%
rename from app/templates/editor/modal/new-model-modal.jade
rename to app/views/editor/modal/NewModelModal/new-model-modal.jade
diff --git a/app/views/editor/modal/SaveVersionModal.coffee b/app/views/editor/modal/SaveVersionModal/SaveVersionModal.coffee
similarity index 97%
rename from app/views/editor/modal/SaveVersionModal.coffee
rename to app/views/editor/modal/SaveVersionModal/SaveVersionModal.coffee
index effee16d0..21f0225b8 100644
--- a/app/views/editor/modal/SaveVersionModal.coffee
+++ b/app/views/editor/modal/SaveVersionModal/SaveVersionModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/modal/save-version-modal'
+template = require './save-version-modal'
 DeltaView = require 'views/editor/DeltaView'
 Patch = require 'models/Patch'
 forms = require 'core/forms'
diff --git a/app/views/editor/modal/SaveVersionModal/index.coffee b/app/views/editor/modal/SaveVersionModal/index.coffee
new file mode 100644
index 000000000..0997de7ec
--- /dev/null
+++ b/app/views/editor/modal/SaveVersionModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './SaveVersionModal'
\ No newline at end of file
diff --git a/app/templates/editor/modal/save-version-modal.jade b/app/views/editor/modal/SaveVersionModal/save-version-modal.jade
similarity index 100%
rename from app/templates/editor/modal/save-version-modal.jade
rename to app/views/editor/modal/SaveVersionModal/save-version-modal.jade
diff --git a/app/styles/modal/save-version-modal.sass b/app/views/editor/modal/SaveVersionModal/save-version-modal.sass
similarity index 100%
rename from app/styles/modal/save-version-modal.sass
rename to app/views/editor/modal/SaveVersionModal/save-version-modal.sass
diff --git a/app/views/editor/modal/VersionsModal.coffee b/app/views/editor/modal/VersionsModal/VersionsModal.coffee
similarity index 97%
rename from app/views/editor/modal/VersionsModal.coffee
rename to app/views/editor/modal/VersionsModal/VersionsModal.coffee
index c5a02e117..1c504f8c2 100755
--- a/app/views/editor/modal/VersionsModal.coffee
+++ b/app/views/editor/modal/VersionsModal/VersionsModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/modal/versions-modal'
+template = require './versions-modal'
 DeltaView = require 'views/editor/DeltaView'
 PatchModal = require 'views/editor/PatchModal'
 nameLoader = require 'core/NameLoader'
diff --git a/app/views/editor/modal/VersionsModal/index.coffee b/app/views/editor/modal/VersionsModal/index.coffee
new file mode 100644
index 000000000..9e4010e72
--- /dev/null
+++ b/app/views/editor/modal/VersionsModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './VersionsModal'
\ No newline at end of file
diff --git a/app/templates/editor/modal/versions-modal.jade b/app/views/editor/modal/VersionsModal/versions-modal.jade
similarity index 100%
rename from app/templates/editor/modal/versions-modal.jade
rename to app/views/editor/modal/VersionsModal/versions-modal.jade
diff --git a/app/styles/editor/poll/poll-edit-view.sass b/app/views/editor/poll/PollEditView/poll-edit-view.sass
similarity index 100%
rename from app/styles/editor/poll/poll-edit-view.sass
rename to app/views/editor/poll/PollEditView/poll-edit-view.sass
diff --git a/app/views/editor/thang/ExportThangTypeModal.coffee b/app/views/editor/thang/ExportThangTypeModal/ExportThangTypeModal.coffee
similarity index 97%
rename from app/views/editor/thang/ExportThangTypeModal.coffee
rename to app/views/editor/thang/ExportThangTypeModal/ExportThangTypeModal.coffee
index 70c444251..764b32ae3 100644
--- a/app/views/editor/thang/ExportThangTypeModal.coffee
+++ b/app/views/editor/thang/ExportThangTypeModal/ExportThangTypeModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/thang/export-thang-type-modal'
+template = require './export-thang-type-modal'
 SpriteExporter = require 'lib/sprites/SpriteExporter'
 
 module.exports = class ExportThangTypeModal extends ModalView
diff --git a/app/templates/editor/thang/export-thang-type-modal.jade b/app/views/editor/thang/ExportThangTypeModal/export-thang-type-modal.jade
similarity index 100%
rename from app/templates/editor/thang/export-thang-type-modal.jade
rename to app/views/editor/thang/ExportThangTypeModal/export-thang-type-modal.jade
diff --git a/app/views/editor/thang/ExportThangTypeModal/index.coffee b/app/views/editor/thang/ExportThangTypeModal/index.coffee
new file mode 100644
index 000000000..5bde5d11f
--- /dev/null
+++ b/app/views/editor/thang/ExportThangTypeModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ExportThangTypeModal'
\ No newline at end of file
diff --git a/app/styles/editor/thang/thang-type-edit-view.sass b/app/views/editor/thang/ThangTypeEditView/thang-type-edit-view.sass
similarity index 100%
rename from app/styles/editor/thang/thang-type-edit-view.sass
rename to app/views/editor/thang/ThangTypeEditView/thang-type-edit-view.sass
diff --git a/app/views/editor/thang/VectorIconSetupModal.coffee b/app/views/editor/thang/VectorIconSetupModal/VectorIconSetupModal.coffee
similarity index 97%
rename from app/views/editor/thang/VectorIconSetupModal.coffee
rename to app/views/editor/thang/VectorIconSetupModal/VectorIconSetupModal.coffee
index a5b1516d9..f2cb5467b 100644
--- a/app/views/editor/thang/VectorIconSetupModal.coffee
+++ b/app/views/editor/thang/VectorIconSetupModal/VectorIconSetupModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/editor/thang/vector-icon-setup-modal'
+template = require './vector-icon-setup-modal'
 
 module.exports = class VectorIconSetupModal extends ModalView
   id: "vector-icon-setup-modal"
diff --git a/app/views/editor/thang/VectorIconSetupModal/index.coffee b/app/views/editor/thang/VectorIconSetupModal/index.coffee
new file mode 100644
index 000000000..4936a27f9
--- /dev/null
+++ b/app/views/editor/thang/VectorIconSetupModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './VectorIconSetupModal'
\ No newline at end of file
diff --git a/app/templates/editor/thang/vector-icon-setup-modal.jade b/app/views/editor/thang/VectorIconSetupModal/vector-icon-setup-modal.jade
similarity index 100%
rename from app/templates/editor/thang/vector-icon-setup-modal.jade
rename to app/views/editor/thang/VectorIconSetupModal/vector-icon-setup-modal.jade
diff --git a/app/styles/editor/thang/vector-icon-setup-modal.sass b/app/views/editor/thang/VectorIconSetupModal/vector-icon-setup-modal.sass
similarity index 100%
rename from app/styles/editor/thang/vector-icon-setup-modal.sass
rename to app/views/editor/thang/VectorIconSetupModal/vector-icon-setup-modal.sass
diff --git a/app/styles/editor/verifier/verifier-view.sass b/app/views/editor/verifier/VerifierView/verifier-view.sass
similarity index 100%
rename from app/styles/editor/verifier/verifier-view.sass
rename to app/views/editor/verifier/VerifierView/verifier-view.sass
diff --git a/app/styles/play/ladder/ladder-tab-view.sass b/app/views/ladder/LadderTabView/ladder-tab-view.sass
similarity index 100%
rename from app/styles/play/ladder/ladder-tab-view.sass
rename to app/views/ladder/LadderTabView/ladder-tab-view.sass
diff --git a/app/views/modal/ModelModal.coffee b/app/views/modal/ModelModal/ModelModal.coffee
similarity index 98%
rename from app/views/modal/ModelModal.coffee
rename to app/views/modal/ModelModal/ModelModal.coffee
index 94eafade6..d91f31812 100644
--- a/app/views/modal/ModelModal.coffee
+++ b/app/views/modal/ModelModal/ModelModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/modal/model-modal'
+template = require './model-modal'
 require 'vendor/treema'
 
 module.exports = class ModelModal extends ModalView
diff --git a/app/views/modal/ModelModal/index.coffee b/app/views/modal/ModelModal/index.coffee
new file mode 100644
index 000000000..7fcaba80d
--- /dev/null
+++ b/app/views/modal/ModelModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ModelModal'
\ No newline at end of file
diff --git a/app/templates/modal/model-modal.jade b/app/views/modal/ModelModal/model-modal.jade
similarity index 100%
rename from app/templates/modal/model-modal.jade
rename to app/views/modal/ModelModal/model-modal.jade
diff --git a/app/styles/modal/model-modal.sass b/app/views/modal/ModelModal/model-modal.sass
similarity index 100%
rename from app/styles/modal/model-modal.sass
rename to app/views/modal/ModelModal/model-modal.sass
diff --git a/app/views/modal/RevertModal.coffee b/app/views/modal/RevertModal/RevertModal.coffee
similarity index 92%
rename from app/views/modal/RevertModal.coffee
rename to app/views/modal/RevertModal/RevertModal.coffee
index f6f977c75..4a06424c4 100644
--- a/app/views/modal/RevertModal.coffee
+++ b/app/views/modal/RevertModal/RevertModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/modal/revert-modal'
+template = require './revert-modal'
 CocoModel = require 'models/CocoModel'
 
 module.exports = class RevertModal extends ModalView
diff --git a/app/views/modal/RevertModal/index.coffee b/app/views/modal/RevertModal/index.coffee
new file mode 100644
index 000000000..09e14a30f
--- /dev/null
+++ b/app/views/modal/RevertModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './RevertModal'
\ No newline at end of file
diff --git a/app/templates/modal/revert-modal.jade b/app/views/modal/RevertModal/revert-modal.jade
similarity index 100%
rename from app/templates/modal/revert-modal.jade
rename to app/views/modal/RevertModal/revert-modal.jade
diff --git a/app/styles/modal/revert-modal.sass b/app/views/modal/RevertModal/revert-modal.sass
similarity index 100%
rename from app/styles/modal/revert-modal.sass
rename to app/views/modal/RevertModal/revert-modal.sass
diff --git a/app/styles/play/campaign-view.sass b/app/views/play/CampaignView/campaign-view.sass
similarity index 100%
rename from app/styles/play/campaign-view.sass
rename to app/views/play/CampaignView/campaign-view.sass
diff --git a/app/styles/play/level/control-bar-view.sass b/app/views/play/level/ControlBarView/control-bar-view.sass
similarity index 100%
rename from app/styles/play/level/control-bar-view.sass
rename to app/views/play/level/ControlBarView/control-bar-view.sass
diff --git a/app/styles/play/level/duel-stats-view.sass b/app/views/play/level/DuelStatsView/duel-stats-view.sass
similarity index 100%
rename from app/styles/play/level/duel-stats-view.sass
rename to app/views/play/level/DuelStatsView/duel-stats-view.sass
diff --git a/app/styles/play/level/hints-view.sass b/app/views/play/level/HintsView/hints-view.sass
similarity index 100%
rename from app/styles/play/level/hints-view.sass
rename to app/views/play/level/HintsView/hints-view.sass
diff --git a/app/styles/play/level/level-dialogue-view.sass b/app/views/play/level/LevelDialogueView/level-dialogue-view.sass
similarity index 100%
rename from app/styles/play/level/level-dialogue-view.sass
rename to app/views/play/level/LevelDialogueView/level-dialogue-view.sass
diff --git a/app/styles/play/level/level-flags-view.sass b/app/views/play/level/LevelFlagsView/level-flags-view.sass
similarity index 100%
rename from app/styles/play/level/level-flags-view.sass
rename to app/views/play/level/LevelFlagsView/level-flags-view.sass
diff --git a/app/styles/play/level/level-playback-view.sass b/app/views/play/level/LevelPlaybackView/level-playback-view.sass
similarity index 100%
rename from app/styles/play/level/level-playback-view.sass
rename to app/views/play/level/LevelPlaybackView/level-playback-view.sass
diff --git a/app/styles/play/level/play-game-dev-level-view.sass b/app/views/play/level/PlayGameDevLevelView/play-game-dev-level-view.sass
similarity index 100%
rename from app/styles/play/level/play-game-dev-level-view.sass
rename to app/views/play/level/PlayGameDevLevelView/play-game-dev-level-view.sass
diff --git a/app/styles/play/play-level-view.sass b/app/views/play/level/PlayLevelView/play-level-view.sass
similarity index 100%
rename from app/styles/play/play-level-view.sass
rename to app/views/play/level/PlayLevelView/play-level-view.sass
diff --git a/app/styles/play/level/play-web-dev-level-view.sass b/app/views/play/level/PlayWebDevLevelView/play-web-dev-level-view.sass
similarity index 100%
rename from app/styles/play/level/play-web-dev-level-view.sass
rename to app/views/play/level/PlayWebDevLevelView/play-web-dev-level-view.sass
diff --git a/app/styles/play/level/web-surface-view.sass b/app/views/play/level/WebSurfaceView/web-surface-view.sass
similarity index 100%
rename from app/styles/play/level/web-surface-view.sass
rename to app/views/play/level/WebSurfaceView/web-surface-view.sass
diff --git a/app/views/play/level/modal/CourseVictoryModal.coffee b/app/views/play/level/modal/CourseVictoryModal/CourseVictoryModal.coffee
similarity index 97%
rename from app/views/play/level/modal/CourseVictoryModal.coffee
rename to app/views/play/level/modal/CourseVictoryModal/CourseVictoryModal.coffee
index 6c94fe7c2..ff3cdb750 100644
--- a/app/views/play/level/modal/CourseVictoryModal.coffee
+++ b/app/views/play/level/modal/CourseVictoryModal/CourseVictoryModal.coffee
@@ -1,9 +1,9 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/level/modal/course-victory-modal'
+template = require './course-victory-modal'
 Level = require 'models/Level'
 Course = require 'models/Course'
 LevelSessions = require 'collections/LevelSessions'
-ProgressView = require './ProgressView'
+ProgressView = require '../ProgressView'
 Classroom = require 'models/Classroom'
 utils = require 'core/utils'
 
diff --git a/test/app/views/play/level/modal/CourseVictoryModal.fixtures.coffee b/app/views/play/level/modal/CourseVictoryModal/CourseVictoryModal.fixtures.coffee
similarity index 100%
rename from test/app/views/play/level/modal/CourseVictoryModal.fixtures.coffee
rename to app/views/play/level/modal/CourseVictoryModal/CourseVictoryModal.fixtures.coffee
diff --git a/app/templates/play/level/modal/course-victory-modal.jade b/app/views/play/level/modal/CourseVictoryModal/course-victory-modal.jade
similarity index 100%
rename from app/templates/play/level/modal/course-victory-modal.jade
rename to app/views/play/level/modal/CourseVictoryModal/course-victory-modal.jade
diff --git a/app/styles/play/level/modal/course-victory-modal.sass b/app/views/play/level/modal/CourseVictoryModal/course-victory-modal.sass
similarity index 100%
rename from app/styles/play/level/modal/course-victory-modal.sass
rename to app/views/play/level/modal/CourseVictoryModal/course-victory-modal.sass
diff --git a/app/views/play/level/modal/CourseVictoryModal/index.coffee b/app/views/play/level/modal/CourseVictoryModal/index.coffee
new file mode 100644
index 000000000..ba672495c
--- /dev/null
+++ b/app/views/play/level/modal/CourseVictoryModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './CourseVictoryModal'
\ No newline at end of file
diff --git a/app/views/play/level/modal/GameDevVictoryModal.coffee b/app/views/play/level/modal/GameDevVictoryModal/GameDevVictoryModal.coffee
similarity index 91%
rename from app/views/play/level/modal/GameDevVictoryModal.coffee
rename to app/views/play/level/modal/GameDevVictoryModal/GameDevVictoryModal.coffee
index cb732f0a6..1604973bd 100644
--- a/app/views/play/level/modal/GameDevVictoryModal.coffee
+++ b/app/views/play/level/modal/GameDevVictoryModal/GameDevVictoryModal.coffee
@@ -4,7 +4,7 @@ category = 'Play GameDev Level'
 
 module.exports = class GameDevVictoryModal extends ModalView
   id: 'game-dev-victory-modal'
-  template: require 'templates/play/level/modal/game-dev-victory-modal'
+  template: require './game-dev-victory-modal'
   
   events:
     'click #replay-game-btn': 'onClickReplayButton'
diff --git a/app/templates/play/level/modal/game-dev-victory-modal.jade b/app/views/play/level/modal/GameDevVictoryModal/game-dev-victory-modal.jade
similarity index 100%
rename from app/templates/play/level/modal/game-dev-victory-modal.jade
rename to app/views/play/level/modal/GameDevVictoryModal/game-dev-victory-modal.jade
diff --git a/app/styles/play/level/modal/game-dev-victory-modal.sass b/app/views/play/level/modal/GameDevVictoryModal/game-dev-victory-modal.sass
similarity index 100%
rename from app/styles/play/level/modal/game-dev-victory-modal.sass
rename to app/views/play/level/modal/GameDevVictoryModal/game-dev-victory-modal.sass
diff --git a/app/views/play/level/modal/GameDevVictoryModal/index.coffee b/app/views/play/level/modal/GameDevVictoryModal/index.coffee
new file mode 100644
index 000000000..1b8fd4718
--- /dev/null
+++ b/app/views/play/level/modal/GameDevVictoryModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './GameDevVictoryModal'
\ No newline at end of file
diff --git a/app/views/play/level/modal/HeroVictoryModal.coffee b/app/views/play/level/modal/HeroVictoryModal/HeroVictoryModal.coffee
similarity index 99%
rename from app/views/play/level/modal/HeroVictoryModal.coffee
rename to app/views/play/level/modal/HeroVictoryModal/HeroVictoryModal.coffee
index 343c38542..2825de99e 100644
--- a/app/views/play/level/modal/HeroVictoryModal.coffee
+++ b/app/views/play/level/modal/HeroVictoryModal/HeroVictoryModal.coffee
@@ -1,6 +1,6 @@
 ModalView = require 'views/core/ModalView'
 CreateAccountModal = require 'views/core/CreateAccountModal'
-template = require 'templates/play/level/modal/hero-victory-modal'
+template = require './hero-victory-modal'
 Achievement = require 'models/Achievement'
 EarnedAchievement = require 'models/EarnedAchievement'
 CocoCollection = require 'collections/CocoCollection'
diff --git a/app/templates/play/level/modal/hero-victory-modal.jade b/app/views/play/level/modal/HeroVictoryModal/hero-victory-modal.jade
similarity index 100%
rename from app/templates/play/level/modal/hero-victory-modal.jade
rename to app/views/play/level/modal/HeroVictoryModal/hero-victory-modal.jade
diff --git a/app/styles/play/level/modal/hero-victory-modal.sass b/app/views/play/level/modal/HeroVictoryModal/hero-victory-modal.sass
similarity index 100%
rename from app/styles/play/level/modal/hero-victory-modal.sass
rename to app/views/play/level/modal/HeroVictoryModal/hero-victory-modal.sass
diff --git a/app/views/play/level/modal/HeroVictoryModal/index.coffee b/app/views/play/level/modal/HeroVictoryModal/index.coffee
new file mode 100644
index 000000000..69d9caee3
--- /dev/null
+++ b/app/views/play/level/modal/HeroVictoryModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './HeroVictoryModal'
\ No newline at end of file
diff --git a/app/views/play/level/modal/ImageGalleryModal.coffee b/app/views/play/level/modal/ImageGalleryModal/ImageGalleryModal.coffee
similarity index 99%
rename from app/views/play/level/modal/ImageGalleryModal.coffee
rename to app/views/play/level/modal/ImageGalleryModal/ImageGalleryModal.coffee
index d37133413..cd840fc83 100644
--- a/app/views/play/level/modal/ImageGalleryModal.coffee
+++ b/app/views/play/level/modal/ImageGalleryModal/ImageGalleryModal.coffee
@@ -4,7 +4,7 @@ utils = require 'core/utils'
 
 module.exports = class ImageGalleryModal extends ModalView
   id: 'image-gallery-modal'
-  template: require 'templates/play/level/modal/image-gallery-modal'
+  template: require './image-gallery-modal'
 
   events:
     'click .image-list-item': 'onClickImageListItem'
diff --git a/test/app/views/play/level/modal/ImageGalleryModal.spec.coffee b/app/views/play/level/modal/ImageGalleryModal/ImageGalleryModal.spec.coffee
similarity index 100%
rename from test/app/views/play/level/modal/ImageGalleryModal.spec.coffee
rename to app/views/play/level/modal/ImageGalleryModal/ImageGalleryModal.spec.coffee
diff --git a/app/templates/play/level/modal/image-gallery-modal.jade b/app/views/play/level/modal/ImageGalleryModal/image-gallery-modal.jade
similarity index 100%
rename from app/templates/play/level/modal/image-gallery-modal.jade
rename to app/views/play/level/modal/ImageGalleryModal/image-gallery-modal.jade
diff --git a/app/styles/play/modal/image-gallery-modal.sass b/app/views/play/level/modal/ImageGalleryModal/image-gallery-modal.sass
similarity index 100%
rename from app/styles/play/modal/image-gallery-modal.sass
rename to app/views/play/level/modal/ImageGalleryModal/image-gallery-modal.sass
diff --git a/app/views/play/level/modal/ImageGalleryModal/index.coffee b/app/views/play/level/modal/ImageGalleryModal/index.coffee
new file mode 100644
index 000000000..9f1015a20
--- /dev/null
+++ b/app/views/play/level/modal/ImageGalleryModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ImageGalleryModal'
\ No newline at end of file
diff --git a/app/styles/play/level/modal/new-item-view.sass b/app/views/play/level/modal/NewItemView/new-item-view.sass
similarity index 100%
rename from app/styles/play/level/modal/new-item-view.sass
rename to app/views/play/level/modal/NewItemView/new-item-view.sass
diff --git a/app/styles/play/level/modal/progress-view.sass b/app/views/play/level/modal/ProgressView/progress-view.sass
similarity index 100%
rename from app/styles/play/level/modal/progress-view.sass
rename to app/views/play/level/modal/ProgressView/progress-view.sass
diff --git a/app/views/play/level/modal/ReloadLevelModal.coffee b/app/views/play/level/modal/ReloadLevelModal/ReloadLevelModal.coffee
similarity index 86%
rename from app/views/play/level/modal/ReloadLevelModal.coffee
rename to app/views/play/level/modal/ReloadLevelModal/ReloadLevelModal.coffee
index 578984dc0..3a12bc608 100644
--- a/app/views/play/level/modal/ReloadLevelModal.coffee
+++ b/app/views/play/level/modal/ReloadLevelModal/ReloadLevelModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/level/modal/reload-level-modal'
+template = require './reload-level-modal'
 
 module.exports = class ReloadLevelModal extends ModalView
   id: '#reload-level-modal'
diff --git a/app/views/play/level/modal/ReloadLevelModal/index.coffee b/app/views/play/level/modal/ReloadLevelModal/index.coffee
new file mode 100644
index 000000000..0cc9f00b3
--- /dev/null
+++ b/app/views/play/level/modal/ReloadLevelModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ReloadLevelModal'
\ No newline at end of file
diff --git a/app/templates/play/level/modal/reload-level-modal.jade b/app/views/play/level/modal/ReloadLevelModal/reload-level-modal.jade
similarity index 100%
rename from app/templates/play/level/modal/reload-level-modal.jade
rename to app/views/play/level/modal/ReloadLevelModal/reload-level-modal.jade
diff --git a/app/styles/play/level/tome/spell-palette-view.sass b/app/views/play/level/tome/SpellPaletteView/spell-palette-view.sass
similarity index 100%
rename from app/styles/play/level/tome/spell-palette-view.sass
rename to app/views/play/level/tome/SpellPaletteView/spell-palette-view.sass
diff --git a/app/styles/play/level/tome/spell-top-bar-view.sass b/app/views/play/level/tome/SpellTopBarView/spell-top-bar-view.sass
similarity index 100%
rename from app/styles/play/level/tome/spell-top-bar-view.sass
rename to app/views/play/level/tome/SpellTopBarView/spell-top-bar-view.sass
diff --git a/app/views/play/menu/GameMenuModal.coffee b/app/views/play/menu/GameMenuModal/GameMenuModal.coffee
similarity index 98%
rename from app/views/play/menu/GameMenuModal.coffee
rename to app/views/play/menu/GameMenuModal/GameMenuModal.coffee
index 2f897b52d..978b5e124 100644
--- a/app/views/play/menu/GameMenuModal.coffee
+++ b/app/views/play/menu/GameMenuModal/GameMenuModal.coffee
@@ -1,6 +1,6 @@
 ModalView = require 'views/core/ModalView'
 CreateAccountModal = require 'views/core/CreateAccountModal'
-template = require 'templates/play/menu/game-menu-modal'
+template = require './game-menu-modal'
 submenuViews = [
   require 'views/play/menu/SaveLoadView'
   require 'views/play/menu/OptionsView'
diff --git a/app/templates/play/menu/game-menu-modal.jade b/app/views/play/menu/GameMenuModal/game-menu-modal.jade
similarity index 100%
rename from app/templates/play/menu/game-menu-modal.jade
rename to app/views/play/menu/GameMenuModal/game-menu-modal.jade
diff --git a/app/styles/play/menu/game-menu-modal.sass b/app/views/play/menu/GameMenuModal/game-menu-modal.sass
similarity index 100%
rename from app/styles/play/menu/game-menu-modal.sass
rename to app/views/play/menu/GameMenuModal/game-menu-modal.sass
diff --git a/app/views/play/menu/GameMenuModal/index.coffee b/app/views/play/menu/GameMenuModal/index.coffee
new file mode 100644
index 000000000..805bebc9c
--- /dev/null
+++ b/app/views/play/menu/GameMenuModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './GameMenuModal'
\ No newline at end of file
diff --git a/app/styles/play/menu/guide-view.sass b/app/views/play/menu/GuideView/guide-view.sass
similarity index 100%
rename from app/styles/play/menu/guide-view.sass
rename to app/views/play/menu/GuideView/guide-view.sass
diff --git a/app/views/play/menu/InventoryModal.coffee b/app/views/play/menu/InventoryModal/InventoryModal.coffee
similarity index 99%
rename from app/views/play/menu/InventoryModal.coffee
rename to app/views/play/menu/InventoryModal/InventoryModal.coffee
index b274ee7d9..21c9db067 100644
--- a/app/views/play/menu/InventoryModal.coffee
+++ b/app/views/play/menu/InventoryModal/InventoryModal.coffee
@@ -1,10 +1,10 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/menu/inventory-modal'
+template = require './inventory-modal'
 buyGemsPromptTemplate = require 'templates/play/modal/buy-gems-prompt'
 {me} = require 'core/auth'
 ThangType = require 'models/ThangType'
 CocoCollection = require 'collections/CocoCollection'
-ItemView = require './ItemView'
+ItemView = require '../ItemView'
 SpriteBuilder = require 'lib/sprites/SpriteBuilder'
 ItemDetailsView = require 'views/play/modal/ItemDetailsView'
 Purchase = require 'models/Purchase'
diff --git a/app/views/play/menu/InventoryModal/index.coffee b/app/views/play/menu/InventoryModal/index.coffee
new file mode 100644
index 000000000..6d59fc431
--- /dev/null
+++ b/app/views/play/menu/InventoryModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './InventoryModal'
\ No newline at end of file
diff --git a/app/templates/play/menu/inventory-modal.jade b/app/views/play/menu/InventoryModal/inventory-modal.jade
similarity index 100%
rename from app/templates/play/menu/inventory-modal.jade
rename to app/views/play/menu/InventoryModal/inventory-modal.jade
diff --git a/app/styles/play/menu/inventory-modal.sass b/app/views/play/menu/InventoryModal/inventory-modal.sass
similarity index 100%
rename from app/styles/play/menu/inventory-modal.sass
rename to app/views/play/menu/InventoryModal/inventory-modal.sass
diff --git a/app/styles/play/menu/item-view.sass b/app/views/play/menu/ItemView/item-view.sass
similarity index 100%
rename from app/styles/play/menu/item-view.sass
rename to app/views/play/menu/ItemView/item-view.sass
diff --git a/app/styles/play/menu/options-view.sass b/app/views/play/menu/OptionsView/options-view.sass
similarity index 100%
rename from app/styles/play/menu/options-view.sass
rename to app/views/play/menu/OptionsView/options-view.sass
diff --git a/app/styles/play/menu/save-load-view.sass b/app/views/play/menu/SaveLoadView/save-load-view.sass
similarity index 100%
rename from app/styles/play/menu/save-load-view.sass
rename to app/views/play/menu/SaveLoadView/save-load-view.sass
diff --git a/app/views/play/modal/BuyGemsModal.coffee b/app/views/play/modal/BuyGemsModal/BuyGemsModal.coffee
similarity index 98%
rename from app/views/play/modal/BuyGemsModal.coffee
rename to app/views/play/modal/BuyGemsModal/BuyGemsModal.coffee
index 816715cce..2783fee01 100644
--- a/app/views/play/modal/BuyGemsModal.coffee
+++ b/app/views/play/modal/BuyGemsModal/BuyGemsModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/modal/buy-gems-modal'
+template = require './buy-gems-modal'
 stripeHandler = require 'core/services/stripe'
 utils = require 'core/utils'
 SubscribeModal = require 'views/core/SubscribeModal'
diff --git a/app/templates/play/modal/buy-gems-modal.jade b/app/views/play/modal/BuyGemsModal/buy-gems-modal.jade
similarity index 100%
rename from app/templates/play/modal/buy-gems-modal.jade
rename to app/views/play/modal/BuyGemsModal/buy-gems-modal.jade
diff --git a/app/styles/play/modal/buy-gems-modal.sass b/app/views/play/modal/BuyGemsModal/buy-gems-modal.sass
similarity index 100%
rename from app/styles/play/modal/buy-gems-modal.sass
rename to app/views/play/modal/BuyGemsModal/buy-gems-modal.sass
diff --git a/app/views/play/modal/BuyGemsModal/index.coffee b/app/views/play/modal/BuyGemsModal/index.coffee
new file mode 100644
index 000000000..709023d41
--- /dev/null
+++ b/app/views/play/modal/BuyGemsModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './BuyGemsModal'
\ No newline at end of file
diff --git a/app/styles/play/modal/item-details-view.sass b/app/views/play/modal/ItemDetailsView/item-details-view.sass
similarity index 100%
rename from app/styles/play/modal/item-details-view.sass
rename to app/views/play/modal/ItemDetailsView/item-details-view.sass
diff --git a/app/views/play/modal/LeaderboardModal.coffee b/app/views/play/modal/LeaderboardModal/LeaderboardModal.coffee
similarity index 97%
rename from app/views/play/modal/LeaderboardModal.coffee
rename to app/views/play/modal/LeaderboardModal/LeaderboardModal.coffee
index 333eddfe5..60a53ea47 100644
--- a/app/views/play/modal/LeaderboardModal.coffee
+++ b/app/views/play/modal/LeaderboardModal/LeaderboardModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/modal/leaderboard-modal'
+template = require './leaderboard-modal'
 LeaderboardTabView = require 'views/play/modal/LeaderboardTabView'
 Level = require 'models/Level'
 utils = require 'core/utils'
diff --git a/app/views/play/modal/LeaderboardModal/index.coffee b/app/views/play/modal/LeaderboardModal/index.coffee
new file mode 100644
index 000000000..4fb9853fc
--- /dev/null
+++ b/app/views/play/modal/LeaderboardModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './LeaderboardModal'
\ No newline at end of file
diff --git a/app/templates/play/modal/leaderboard-modal.jade b/app/views/play/modal/LeaderboardModal/leaderboard-modal.jade
similarity index 100%
rename from app/templates/play/modal/leaderboard-modal.jade
rename to app/views/play/modal/LeaderboardModal/leaderboard-modal.jade
diff --git a/app/styles/play/modal/leaderboard-modal.sass b/app/views/play/modal/LeaderboardModal/leaderboard-modal.sass
similarity index 100%
rename from app/styles/play/modal/leaderboard-modal.sass
rename to app/views/play/modal/LeaderboardModal/leaderboard-modal.sass
diff --git a/app/styles/play/modal/leaderboard-tab-view.sass b/app/views/play/modal/LeaderboardTabView/leaderboard-tab-view.sass
similarity index 100%
rename from app/styles/play/modal/leaderboard-tab-view.sass
rename to app/views/play/modal/LeaderboardTabView/leaderboard-tab-view.sass
diff --git a/app/views/play/modal/PlayAccountModal.coffee b/app/views/play/modal/PlayAccountModal/PlayAccountModal.coffee
similarity index 96%
rename from app/views/play/modal/PlayAccountModal.coffee
rename to app/views/play/modal/PlayAccountModal/PlayAccountModal.coffee
index 9a1adc440..85ac66278 100644
--- a/app/views/play/modal/PlayAccountModal.coffee
+++ b/app/views/play/modal/PlayAccountModal/PlayAccountModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/modal/play-account-modal'
+template = require './play-account-modal'
 AccountSettingsView = require 'views/account/AccountSettingsView'
 
 module.exports = class PlayAccountModal extends ModalView
diff --git a/app/views/play/modal/PlayAccountModal/index.coffee b/app/views/play/modal/PlayAccountModal/index.coffee
new file mode 100644
index 000000000..53dd9f645
--- /dev/null
+++ b/app/views/play/modal/PlayAccountModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './PlayAccountModal'
\ No newline at end of file
diff --git a/app/templates/play/modal/play-account-modal.jade b/app/views/play/modal/PlayAccountModal/play-account-modal.jade
similarity index 100%
rename from app/templates/play/modal/play-account-modal.jade
rename to app/views/play/modal/PlayAccountModal/play-account-modal.jade
diff --git a/app/styles/play/modal/play-account-modal.sass b/app/views/play/modal/PlayAccountModal/play-account-modal.sass
similarity index 100%
rename from app/styles/play/modal/play-account-modal.sass
rename to app/views/play/modal/PlayAccountModal/play-account-modal.sass
diff --git a/app/views/play/modal/PlayAchievementsModal.coffee b/app/views/play/modal/PlayAchievementsModal/PlayAchievementsModal.coffee
similarity index 98%
rename from app/views/play/modal/PlayAchievementsModal.coffee
rename to app/views/play/modal/PlayAchievementsModal/PlayAchievementsModal.coffee
index f037009f8..db166c008 100644
--- a/app/views/play/modal/PlayAchievementsModal.coffee
+++ b/app/views/play/modal/PlayAchievementsModal/PlayAchievementsModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/modal/play-achievements-modal'
+template = require './play-achievements-modal'
 CocoCollection = require 'collections/CocoCollection'
 Achievement = require 'models/Achievement'
 EarnedAchievement = require 'models/EarnedAchievement'
diff --git a/app/views/play/modal/PlayAchievementsModal/index.coffee b/app/views/play/modal/PlayAchievementsModal/index.coffee
new file mode 100644
index 000000000..ab2780db6
--- /dev/null
+++ b/app/views/play/modal/PlayAchievementsModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './PlayAchievementsModal'
\ No newline at end of file
diff --git a/app/templates/play/modal/play-achievements-modal.jade b/app/views/play/modal/PlayAchievementsModal/play-achievements-modal.jade
similarity index 100%
rename from app/templates/play/modal/play-achievements-modal.jade
rename to app/views/play/modal/PlayAchievementsModal/play-achievements-modal.jade
diff --git a/app/styles/play/modal/play-achievements-modal.sass b/app/views/play/modal/PlayAchievementsModal/play-achievements-modal.sass
similarity index 100%
rename from app/styles/play/modal/play-achievements-modal.sass
rename to app/views/play/modal/PlayAchievementsModal/play-achievements-modal.sass
diff --git a/app/views/play/modal/PlayHeroesModal.coffee b/app/views/play/modal/PlayHeroesModal/PlayHeroesModal.coffee
similarity index 99%
rename from app/views/play/modal/PlayHeroesModal.coffee
rename to app/views/play/modal/PlayHeroesModal/PlayHeroesModal.coffee
index 731a9f514..35841d5c5 100644
--- a/app/views/play/modal/PlayHeroesModal.coffee
+++ b/app/views/play/modal/PlayHeroesModal/PlayHeroesModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/modal/play-heroes-modal'
+template = require './play-heroes-modal'
 buyGemsPromptTemplate = require 'templates/play/modal/buy-gems-prompt'
 CocoCollection = require 'collections/CocoCollection'
 ThangType = require 'models/ThangType'
diff --git a/app/views/play/modal/PlayHeroesModal/index.coffee b/app/views/play/modal/PlayHeroesModal/index.coffee
new file mode 100644
index 000000000..68b9f58be
--- /dev/null
+++ b/app/views/play/modal/PlayHeroesModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './PlayHeroesModal'
\ No newline at end of file
diff --git a/app/templates/play/modal/play-heroes-modal.jade b/app/views/play/modal/PlayHeroesModal/play-heroes-modal.jade
similarity index 100%
rename from app/templates/play/modal/play-heroes-modal.jade
rename to app/views/play/modal/PlayHeroesModal/play-heroes-modal.jade
diff --git a/app/styles/play/modal/play-heroes-modal.sass b/app/views/play/modal/PlayHeroesModal/play-heroes-modal.sass
similarity index 100%
rename from app/styles/play/modal/play-heroes-modal.sass
rename to app/views/play/modal/PlayHeroesModal/play-heroes-modal.sass
diff --git a/app/views/play/modal/PlayItemsModal.coffee b/app/views/play/modal/PlayItemsModal/PlayItemsModal.coffee
similarity index 98%
rename from app/views/play/modal/PlayItemsModal.coffee
rename to app/views/play/modal/PlayItemsModal/PlayItemsModal.coffee
index d4f3eff6c..33792011c 100644
--- a/app/views/play/modal/PlayItemsModal.coffee
+++ b/app/views/play/modal/PlayItemsModal/PlayItemsModal.coffee
@@ -1,7 +1,7 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/modal/play-items-modal'
+template = require './play-items-modal'
 buyGemsPromptTemplate = require 'templates/play/modal/buy-gems-prompt'
-ItemDetailsView = require './ItemDetailsView'
+ItemDetailsView = require '../ItemDetailsView'
 BuyGemsModal = require 'views/play/modal/BuyGemsModal'
 CreateAccountModal = require 'views/core/CreateAccountModal'
 
diff --git a/app/views/play/modal/PlayItemsModal/index.coffee b/app/views/play/modal/PlayItemsModal/index.coffee
new file mode 100644
index 000000000..1e7b91cef
--- /dev/null
+++ b/app/views/play/modal/PlayItemsModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './PlayItemsModal'
\ No newline at end of file
diff --git a/app/templates/play/modal/play-items-modal.jade b/app/views/play/modal/PlayItemsModal/play-items-modal.jade
similarity index 100%
rename from app/templates/play/modal/play-items-modal.jade
rename to app/views/play/modal/PlayItemsModal/play-items-modal.jade
diff --git a/app/styles/play/modal/play-items-modal.sass b/app/views/play/modal/PlayItemsModal/play-items-modal.sass
similarity index 100%
rename from app/styles/play/modal/play-items-modal.sass
rename to app/views/play/modal/PlayItemsModal/play-items-modal.sass
diff --git a/app/views/play/modal/PlaySettingsModal.coffee b/app/views/play/modal/PlaySettingsModal/PlaySettingsModal.coffee
similarity index 89%
rename from app/views/play/modal/PlaySettingsModal.coffee
rename to app/views/play/modal/PlaySettingsModal/PlaySettingsModal.coffee
index 028aa4227..5a6507bda 100644
--- a/app/views/play/modal/PlaySettingsModal.coffee
+++ b/app/views/play/modal/PlaySettingsModal/PlaySettingsModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/modal/play-settings-modal'
+template = require './play-settings-modal'
 
 module.exports = class PlaySettingsModal extends ModalView
   className: 'modal fade play-modal'
diff --git a/app/views/play/modal/PlaySettingsModal/index.coffee b/app/views/play/modal/PlaySettingsModal/index.coffee
new file mode 100644
index 000000000..e1ca1309a
--- /dev/null
+++ b/app/views/play/modal/PlaySettingsModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './PlaySettingsModal'
\ No newline at end of file
diff --git a/app/templates/play/modal/play-settings-modal.jade b/app/views/play/modal/PlaySettingsModal/play-settings-modal.jade
similarity index 100%
rename from app/templates/play/modal/play-settings-modal.jade
rename to app/views/play/modal/PlaySettingsModal/play-settings-modal.jade
diff --git a/app/styles/play/modal/play-settings-modal.sass b/app/views/play/modal/PlaySettingsModal/play-settings-modal.sass
similarity index 100%
rename from app/styles/play/modal/play-settings-modal.sass
rename to app/views/play/modal/PlaySettingsModal/play-settings-modal.sass
diff --git a/app/views/play/modal/PollModal.coffee b/app/views/play/modal/PollModal/PollModal.coffee
similarity index 98%
rename from app/views/play/modal/PollModal.coffee
rename to app/views/play/modal/PollModal/PollModal.coffee
index 420b3d971..061da2788 100644
--- a/app/views/play/modal/PollModal.coffee
+++ b/app/views/play/modal/PollModal/PollModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/modal/poll-modal'
+template = require './poll-modal'
 utils = require 'core/utils'
 UserPollsRecord = require 'models/UserPollsRecord'
 
diff --git a/app/views/play/modal/PollModal/index.coffee b/app/views/play/modal/PollModal/index.coffee
new file mode 100644
index 000000000..86fe0f981
--- /dev/null
+++ b/app/views/play/modal/PollModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './PollModal'
\ No newline at end of file
diff --git a/app/templates/play/modal/poll-modal.jade b/app/views/play/modal/PollModal/poll-modal.jade
similarity index 100%
rename from app/templates/play/modal/poll-modal.jade
rename to app/views/play/modal/PollModal/poll-modal.jade
diff --git a/app/styles/play/modal/poll-modal.sass b/app/views/play/modal/PollModal/poll-modal.sass
similarity index 100%
rename from app/styles/play/modal/poll-modal.sass
rename to app/views/play/modal/PollModal/poll-modal.sass
diff --git a/app/views/play/modal/ShareProgressModal.coffee b/app/views/play/modal/ShareProgressModal/ShareProgressModal.coffee
similarity index 92%
rename from app/views/play/modal/ShareProgressModal.coffee
rename to app/views/play/modal/ShareProgressModal/ShareProgressModal.coffee
index 4ea07b376..461201559 100644
--- a/app/views/play/modal/ShareProgressModal.coffee
+++ b/app/views/play/modal/ShareProgressModal/ShareProgressModal.coffee
@@ -1,5 +1,5 @@
 ModalView = require 'views/core/ModalView'
-template = require 'templates/play/modal/share-progress-modal'
+template = require './share-progress-modal'
 storage = require 'core/storage'
 
 module.exports = class ShareProgressModal extends ModalView
diff --git a/test/app/views/play/level/modal/ShareProgressModal.spec.coffee b/app/views/play/modal/ShareProgressModal/ShareProgressModal.spec.coffee
similarity index 100%
rename from test/app/views/play/level/modal/ShareProgressModal.spec.coffee
rename to app/views/play/modal/ShareProgressModal/ShareProgressModal.spec.coffee
diff --git a/app/views/play/modal/ShareProgressModal/index.coffee b/app/views/play/modal/ShareProgressModal/index.coffee
new file mode 100644
index 000000000..97563d3b4
--- /dev/null
+++ b/app/views/play/modal/ShareProgressModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './ShareProgressModal'
\ No newline at end of file
diff --git a/app/templates/play/modal/share-progress-modal.jade b/app/views/play/modal/ShareProgressModal/share-progress-modal.jade
similarity index 100%
rename from app/templates/play/modal/share-progress-modal.jade
rename to app/views/play/modal/ShareProgressModal/share-progress-modal.jade
diff --git a/app/styles/play/modal/share-progress-modal.sass b/app/views/play/modal/ShareProgressModal/share-progress-modal.sass
similarity index 100%
rename from app/styles/play/modal/share-progress-modal.sass
rename to app/views/play/modal/ShareProgressModal/share-progress-modal.sass
diff --git a/app/views/teachers/EditStudentModal.coffee b/app/views/teachers/EditStudentModal/EditStudentModal.coffee
similarity index 96%
rename from app/views/teachers/EditStudentModal.coffee
rename to app/views/teachers/EditStudentModal/EditStudentModal.coffee
index 7f7feae65..c3b436eef 100644
--- a/app/views/teachers/EditStudentModal.coffee
+++ b/app/views/teachers/EditStudentModal/EditStudentModal.coffee
@@ -1,6 +1,6 @@
 ModalView = require 'views/core/ModalView'
 State = require 'models/State'
-template = require 'templates/teachers/edit-student-modal'
+template = require './edit-student-modal'
 auth = require 'core/auth'
 
 module.exports = class EditStudentModal extends ModalView
diff --git a/test/app/views/teachers/EditStudentModal.spec.coffee b/app/views/teachers/EditStudentModal/EditStudentModal.spec.coffee
similarity index 100%
rename from test/app/views/teachers/EditStudentModal.spec.coffee
rename to app/views/teachers/EditStudentModal/EditStudentModal.spec.coffee
diff --git a/app/templates/teachers/edit-student-modal.jade b/app/views/teachers/EditStudentModal/edit-student-modal.jade
similarity index 100%
rename from app/templates/teachers/edit-student-modal.jade
rename to app/views/teachers/EditStudentModal/edit-student-modal.jade
diff --git a/app/styles/teachers/edit-student-modal.sass b/app/views/teachers/EditStudentModal/edit-student-modal.sass
similarity index 100%
rename from app/styles/teachers/edit-student-modal.sass
rename to app/views/teachers/EditStudentModal/edit-student-modal.sass
diff --git a/app/views/teachers/EditStudentModal/index.coffee b/app/views/teachers/EditStudentModal/index.coffee
new file mode 100644
index 000000000..acbc4a0b5
--- /dev/null
+++ b/app/views/teachers/EditStudentModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './EditStudentModal'
\ No newline at end of file
diff --git a/app/views/teachers/HowToEnrollModal.coffee b/app/views/teachers/HowToEnrollModal/HowToEnrollModal.coffee
similarity index 68%
rename from app/views/teachers/HowToEnrollModal.coffee
rename to app/views/teachers/HowToEnrollModal/HowToEnrollModal.coffee
index 636b21d15..806bde9cd 100644
--- a/app/views/teachers/HowToEnrollModal.coffee
+++ b/app/views/teachers/HowToEnrollModal/HowToEnrollModal.coffee
@@ -2,5 +2,5 @@ ModalView = require 'views/core/ModalView'
 
 module.exports = class HowToEnrollModal extends ModalView
   id: 'how-to-enroll-modal'
-  template: require 'templates/teachers/how-to-enroll-modal'
+  template: require './how-to-enroll-modal'
   
diff --git a/app/templates/teachers/how-to-enroll-modal.jade b/app/views/teachers/HowToEnrollModal/how-to-enroll-modal.jade
similarity index 100%
rename from app/templates/teachers/how-to-enroll-modal.jade
rename to app/views/teachers/HowToEnrollModal/how-to-enroll-modal.jade
diff --git a/app/styles/teachers/how-to-enroll-modal.sass b/app/views/teachers/HowToEnrollModal/how-to-enroll-modal.sass
similarity index 100%
rename from app/styles/teachers/how-to-enroll-modal.sass
rename to app/views/teachers/HowToEnrollModal/how-to-enroll-modal.sass
diff --git a/app/views/teachers/HowToEnrollModal/index.coffee b/app/views/teachers/HowToEnrollModal/index.coffee
new file mode 100644
index 000000000..d49e64037
--- /dev/null
+++ b/app/views/teachers/HowToEnrollModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './HowToEnrollModal'
\ No newline at end of file
diff --git a/app/styles/teachers/markdown-resource-view.sass b/app/views/teachers/MarkdownResourceView/markdown-resource-view.sass
similarity index 100%
rename from app/styles/teachers/markdown-resource-view.sass
rename to app/views/teachers/MarkdownResourceView/markdown-resource-view.sass
diff --git a/app/styles/teachers/ResourceHubView.sass b/app/views/teachers/ResourceHubView/ResourceHubView.sass
similarity index 100%
rename from app/styles/teachers/ResourceHubView.sass
rename to app/views/teachers/ResourceHubView/ResourceHubView.sass
diff --git a/app/styles/teachers/teacher-course-solution-view.sass b/app/views/teachers/TeacherCourseSolutionView/teacher-course-solution-view.sass
similarity index 100%
rename from app/styles/teachers/teacher-course-solution-view.sass
rename to app/views/teachers/TeacherCourseSolutionView/teacher-course-solution-view.sass
diff --git a/app/views/teachers/TeachersContactModal.coffee b/app/views/teachers/TeachersContactModal/TeachersContactModal.coffee
similarity index 97%
rename from app/views/teachers/TeachersContactModal.coffee
rename to app/views/teachers/TeachersContactModal/TeachersContactModal.coffee
index 1f86a1cc9..d29306a68 100644
--- a/app/views/teachers/TeachersContactModal.coffee
+++ b/app/views/teachers/TeachersContactModal/TeachersContactModal.coffee
@@ -6,7 +6,7 @@ contact = require 'core/contact'
 
 module.exports = class TeachersContactModal extends ModalView
   id: 'teachers-contact-modal'
-  template: require 'templates/teachers/teachers-contact-modal'
+  template: require './teachers-contact-modal'
 
   events:
     'submit form': 'onSubmitForm'
diff --git a/test/app/views/courses/TeachersContactModal.spec.coffee b/app/views/teachers/TeachersContactModal/TeachersContactModal.spec.coffee
similarity index 100%
rename from test/app/views/courses/TeachersContactModal.spec.coffee
rename to app/views/teachers/TeachersContactModal/TeachersContactModal.spec.coffee
diff --git a/app/views/teachers/TeachersContactModal/index.coffee b/app/views/teachers/TeachersContactModal/index.coffee
new file mode 100644
index 000000000..18baa682e
--- /dev/null
+++ b/app/views/teachers/TeachersContactModal/index.coffee
@@ -0,0 +1 @@
+module.exports = require './TeachersContactModal'
\ No newline at end of file
diff --git a/app/templates/teachers/teachers-contact-modal.jade b/app/views/teachers/TeachersContactModal/teachers-contact-modal.jade
similarity index 100%
rename from app/templates/teachers/teachers-contact-modal.jade
rename to app/views/teachers/TeachersContactModal/teachers-contact-modal.jade
diff --git a/app/styles/teachers/teachers-contact-modal.sass b/app/views/teachers/TeachersContactModal/teachers-contact-modal.sass
similarity index 100%
rename from app/styles/teachers/teachers-contact-modal.sass
rename to app/views/teachers/TeachersContactModal/teachers-contact-modal.sass
diff --git a/app/styles/user/email-verified-view.sass b/app/views/user/EmailVerifiedView/email-verified-view.sass
similarity index 100%
rename from app/styles/user/email-verified-view.sass
rename to app/views/user/EmailVerifiedView/email-verified-view.sass
diff --git a/app/styles/user/main-user-view.sass b/app/views/user/MainUserView/main-user-view.sass
similarity index 100%
rename from app/styles/user/main-user-view.sass
rename to app/views/user/MainUserView/main-user-view.sass
diff --git a/scripts/reorganizeViews.js b/scripts/reorganizeViews.js
index e063d8a29..c58e3ed6c 100644
--- a/scripts/reorganizeViews.js
+++ b/scripts/reorganizeViews.js
@@ -15,7 +15,7 @@ while(directories.length) {
     // .coffee => .js
     if(stat.isFile()) {
       var group = _.string.underscored(fileOrDir.split('.')[0])
-      if(_.string.endsWith(group, '_view')) {
+      if(_.string.endsWith(group, '_view') || _.string.endsWith(group, '_modal')) {
         if(!groupings[group]) groupings[group] = []
         groupings[group].push(absPath)
       }
@@ -27,6 +27,7 @@ while(directories.length) {
     }
   })
 }
+console.log('groupings', JSON.stringify(groupings, null, '\t'))
 
 _.forEach(groupings, function(files) {
   var viewAbsPath = _.remove(files, (file) => _.string.startsWith(file, './app/views/'))[0]
@@ -84,6 +85,8 @@ _.forEach(groupings, function(files) {
     templateFileData = templateFileData
       .replace("include ./teacher-dashboard-nav.jade", "include /templates/courses/teacher-dashboard-nav.jade")
       .replace("include ../courses/teacher-dashboard-nav.jade", "include /templates/courses/teacher-dashboard-nav.jade")
+      .replace("extends /templates/editor/modal/save-version-modal", "extends /views/editor/modal/SaveVersionModal/save-version-modal")
+      .replace("extends /templates/editor/modal/new-model-modal", "extends /views/editor/modal/NewModelModal/new-model-modal")
     fs.writeFileSync(templateAbsPath, templateFileData, { encoding: 'utf8' })
   }
   
@@ -96,4 +99,14 @@ _.forEach(groupings, function(files) {
     // Move test file into view folder
     fs.renameSync(testAbsPath, newTestAbsPath)
   }
+
+  var styleAbsPath = _.remove(files, (file) => _.string.startsWith(file, './app/styles'))[0]
+  if(styleAbsPath) {
+    // Deduce data
+    styleFileName = styleAbsPath.slice(_.lastIndexOf(styleAbsPath, '/'))
+    newStyleAbsPath = viewFolder + styleFileName
+
+    // Move style file into view folder
+    fs.renameSync(styleAbsPath, newStyleAbsPath)
+  }
 });