diff --git a/src/plugins/coreplugin/actionmanager/actioncontainer.cpp b/src/plugins/coreplugin/actionmanager/actioncontainer.cpp
index bf2d49826c0189fdd28503f94b0279118dcb9c69..d8c7a1930c41e06b849327a3ca4e81d276efcfdc 100644
--- a/src/plugins/coreplugin/actionmanager/actioncontainer.cpp
+++ b/src/plugins/coreplugin/actionmanager/actioncontainer.cpp
@@ -35,7 +35,6 @@
 #include "actionmanager_p.h"
 
 #include "command_p.h"
-#include "coreimpl.h"
 
 #include "coreconstants.h"
 #include "uniqueidmanager.h"
@@ -150,15 +149,13 @@ bool ActionContainerPrivate::hasState(ContainerState state) const
 
 void ActionContainerPrivate::appendGroup(const QString &group)
 {
-    UniqueIDManager *idmanager = CoreImpl::instance()->uniqueIDManager();
-    int gid = idmanager->uniqueIdentifier(group);
+    int gid = UniqueIDManager::instance()->uniqueIdentifier(group);
     m_groups << gid;
 }
 
 QAction *ActionContainerPrivate::insertLocation(const QString &group) const
 {
-    UniqueIDManager *idmanager = CoreImpl::instance()->uniqueIDManager();
-    int grpid = idmanager->uniqueIdentifier(group);
+    int grpid = UniqueIDManager::instance()->uniqueIdentifier(group);
     int prevKey = 0;
     int pos = ((grpid << 16) | 0xFFFF);
     return beforeAction(pos, &prevKey);
@@ -181,7 +178,7 @@ void ActionContainerPrivate::addAction(Command *action, const QString &group)
         }
         a->setStateFlags(a->stateFlags() | CommandPrivate::CS_Initialized);
     } else {
-        UniqueIDManager *idmanager = CoreImpl::instance()->uniqueIDManager();
+        UniqueIDManager *idmanager = UniqueIDManager::instance();
         int grpid = idmanager->uniqueIdentifier(Constants::G_DEFAULT_TWO);
         if (!group.isEmpty())
             grpid = idmanager->uniqueIdentifier(group);
@@ -208,7 +205,7 @@ void ActionContainerPrivate::addMenu(ActionContainer *menu, const QString &group
         }
         mc->setState(ActionContainerPrivate::CS_Initialized);
     } else {
-        UniqueIDManager *idmanager = CoreImpl::instance()->uniqueIDManager();
+        UniqueIDManager *idmanager = UniqueIDManager::instance();
         int grpid = idmanager->uniqueIdentifier(Constants::G_DEFAULT_TWO);
         if (!group.isEmpty())
             grpid = idmanager->uniqueIdentifier(group);
diff --git a/src/plugins/coreplugin/actionmanager/commandsfile.cpp b/src/plugins/coreplugin/actionmanager/commandsfile.cpp
index abdecf43660d9c8be14d4a9b67c72e22789d5b48..85d7d172a1dc65732b4c26ce74f3a4350a6d134a 100644
--- a/src/plugins/coreplugin/actionmanager/commandsfile.cpp
+++ b/src/plugins/coreplugin/actionmanager/commandsfile.cpp
@@ -31,7 +31,6 @@
 **
 ***************************************************************************/
 
-#include "coreimpl.h"
 #include "commandsfile.h"
 #include "shortcutsettings.h"
 #include "command_p.h"
@@ -100,7 +99,7 @@ QMap<QString, QKeySequence> CommandsFile::importCommands() const
 */
 bool CommandsFile::exportCommands(const QList<ShortcutItem *> &items)
 {
-    UniqueIDManager *idmanager = CoreImpl::instance()->uniqueIDManager();
+    UniqueIDManager *idmanager = UniqueIDManager::instance();
 
     QFile file(m_filename);
     if (!file.open(QIODevice::WriteOnly))
@@ -110,7 +109,7 @@ bool CommandsFile::exportCommands(const QList<ShortcutItem *> &items)
     QDomElement root = doc.createElement("mapping");
     doc.appendChild(root);
 
-    for (int i=0; i<items.count(); ++i) {
+    for (int i = 0; i < items.count(); ++i) {
         ShortcutItem *item = items.at(i);
         QDomElement ctag = doc.createElement("shortcut");
         ctag.setAttribute(QLatin1String("id"), idmanager->stringForUniqueIdentifier(item->m_cmd->id()));
diff --git a/src/plugins/coreplugin/dialogs/settingsdialog.cpp b/src/plugins/coreplugin/dialogs/settingsdialog.cpp
index 547c0f2d40dbf9dedf2f828be9f271689a1d0913..7e48417d2ce0df5391e519e188ec8fbd8ef6ad31 100644
--- a/src/plugins/coreplugin/dialogs/settingsdialog.cpp
+++ b/src/plugins/coreplugin/dialogs/settingsdialog.cpp
@@ -32,7 +32,6 @@
 ***************************************************************************/
 
 #include "settingsdialog.h"
-#include "coreimpl.h"
 
 #include <extensionsystem/pluginmanager.h>
 
diff --git a/src/plugins/coreplugin/editmode.cpp b/src/plugins/coreplugin/editmode.cpp
index dacb31e355c74fa66da52cdb6124d52fce8e9b66..e5de7124485d1be0ed65f464107256d0dc2aa3e5 100644
--- a/src/plugins/coreplugin/editmode.cpp
+++ b/src/plugins/coreplugin/editmode.cpp
@@ -34,7 +34,6 @@
 #include "editmode.h"
 #include "editormanager.h"
 #include "coreconstants.h"
-#include "coreimpl.h"
 #include "modemanager.h"
 #include "uniqueidmanager.h"
 #include "minisplitter.h"
@@ -122,9 +121,9 @@ const char* EditMode::uniqueModeName() const
 QList<int> EditMode::context() const
 {
     static QList<int> contexts = QList<int>() <<
-        CoreImpl::instance()->uniqueIDManager()->uniqueIdentifier(Constants::C_EDIT_MODE) <<
-        CoreImpl::instance()->uniqueIDManager()->uniqueIdentifier(Constants::C_EDITORMANAGER) <<
-        CoreImpl::instance()->uniqueIDManager()->uniqueIdentifier(Constants::C_NAVIGATION_PANE);
+        UniqueIDManager::instance()->uniqueIdentifier(Constants::C_EDIT_MODE) <<
+        UniqueIDManager::instance()->uniqueIdentifier(Constants::C_EDITORMANAGER) <<
+        UniqueIDManager::instance()->uniqueIdentifier(Constants::C_NAVIGATION_PANE);
     return contexts;
 }
 
diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp
index 5b8bee111e907f0406bd833e94999e9e5598e50e..d3aac99cb5ddf7da312372cb5fca93c07a11e4a3 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.cpp
+++ b/src/plugins/coreplugin/editormanager/editormanager.cpp
@@ -32,19 +32,19 @@
 ***************************************************************************/
 
 #include "editormanager.h"
+#include "editorgroup.h"
 #include "editorsplitter.h"
+#include "openeditorsview.h"
 #include "openeditorswindow.h"
 #include "openwithdialog.h"
 #include "filemanager.h"
-#include "tabpositionindicator.h"
-#include "saveitemsdialog.h"
-#include "vcsmanager.h"
+#include "icore.h"
 #include "iversioncontrol.h"
-#include "openeditorsview.h"
-#include "editorgroup.h"
 #include "mimedatabase.h"
+#include "saveitemsdialog.h"
+#include "tabpositionindicator.h"
+#include "vcsmanager.h"
 
-#include <coreplugin/coreimpl.h>
 #include <coreplugin/coreconstants.h>
 #include <coreplugin/modemanager.h>
 #include <coreplugin/uniqueidmanager.h>
@@ -68,6 +68,7 @@
 #include <QtGui/QApplication>
 #include <QtGui/QFileDialog>
 #include <QtGui/QLayout>
+#include <QtGui/QMainWindow>
 #include <QtGui/QMenu>
 #include <QtGui/QMessageBox>
 #include <QtGui/QPushButton>
@@ -649,7 +650,7 @@ bool EditorManager::closeEditors(const QList<IEditor*> editorsToClose, bool askA
     //ask whether to save modified files
     if (askAboutModifiedEditors) {
         bool cancelled = false;
-        QList<IFile*> list = CoreImpl::instance()->fileManager()->
+        QList<IFile*> list = ICore::instance()->fileManager()->
             saveModifiedFiles(filesForEditors(acceptedEditors), &cancelled);
         if (cancelled)
             return false;
@@ -1549,7 +1550,7 @@ void EditorManager::openInExternalEditor()
         return;
     if (editor->file()->isModified()) {
         bool cancelled = false;
-        QList<IFile*> list = CoreImpl::instance()->fileManager()->
+        QList<IFile*> list = ICore::instance()->fileManager()->
                              saveModifiedFiles(QList<IFile*>() << editor->file(), &cancelled);
         if (cancelled)
             return;
diff --git a/src/plugins/coreplugin/editormanager/openeditorsview.cpp b/src/plugins/coreplugin/editormanager/openeditorsview.cpp
index 63950714942614906292639f3cac9297ec00dc83..77e44faaa053b0dcda067445f5baedb71ee51a32 100644
--- a/src/plugins/coreplugin/editormanager/openeditorsview.cpp
+++ b/src/plugins/coreplugin/editormanager/openeditorsview.cpp
@@ -34,7 +34,7 @@
 #include "openeditorsview.h"
 #include "editorgroup.h"
 #include "editormanager.h"
-#include "coreimpl.h"
+#include "icore.h"
 
 #include <coreplugin/coreconstants.h>
 #include <coreplugin/filemanager.h>
@@ -218,7 +218,7 @@ void OpenEditorsWidget::closeEditors()
         selectedEditors.append(item->data(0, Qt::UserRole).value<IEditor *>());
         selectedFiles.append(item->data(0, Qt::UserRole).value<IEditor *>()->file());
     }
-    ICore *core = CoreImpl::instance();
+    ICore *core = ICore::instance();
     bool cancelled = false;
     core->fileManager()->saveModifiedFiles(selectedFiles, &cancelled);
     if (cancelled)
diff --git a/src/plugins/coreplugin/editormanager/stackededitorgroup.cpp b/src/plugins/coreplugin/editormanager/stackededitorgroup.cpp
index fee513e2e7b68920dce110513fe6d1c363d77a3b..08e63b2773e0f7418e90208f451868539eb8fe4c 100644
--- a/src/plugins/coreplugin/editormanager/stackededitorgroup.cpp
+++ b/src/plugins/coreplugin/editormanager/stackededitorgroup.cpp
@@ -33,7 +33,6 @@
 
 #include "stackededitorgroup.h"
 #include "editormanager.h"
-#include "coreimpl.h"
 
 #include <utils/qtcassert.h>
 
@@ -355,7 +354,7 @@ QList<IEditor *> StackedEditorGroup::editorsInNaturalOrder() const
 
 void StackedEditorGroup::makeEditorWritable()
 {
-    CoreImpl::instance()->editorManager()->makeEditorWritable(currentEditor());
+    EditorManager::instance()->makeEditorWritable(currentEditor());
 }
 
 void StackedEditorGroup::listSelectionChanged(int index)
diff --git a/src/plugins/coreplugin/mainwindow.cpp b/src/plugins/coreplugin/mainwindow.cpp
index 04ce8a346f4af642d42396293a7eb2ae86d93022..93e2cb0b991679502e69f6ff856451d6b7b4fd8e 100644
--- a/src/plugins/coreplugin/mainwindow.cpp
+++ b/src/plugins/coreplugin/mainwindow.cpp
@@ -94,7 +94,7 @@
 extern "C" void handleSigInt(int sig)
 {
     Q_UNUSED(sig);
-    Core::Internal::CoreImpl::instance()->exit();
+    Core::ICore::instance()->exit();
     qDebug() << "SIGINT caught. Shutting down.";
 }
 #endif
diff --git a/src/plugins/coreplugin/modemanager.cpp b/src/plugins/coreplugin/modemanager.cpp
index 24a0b6eac3783d2935639cf77b6e326cdcecc2a4..64006ff723609143d507643a2c9a7ba01c965ac4 100644
--- a/src/plugins/coreplugin/modemanager.cpp
+++ b/src/plugins/coreplugin/modemanager.cpp
@@ -42,7 +42,6 @@
 #include <coreplugin/actionmanager/actionmanager.h>
 #include <coreplugin/actionmanager/command.h>
 #include <coreplugin/coreconstants.h>
-#include <coreplugin/coreimpl.h>
 #include <coreplugin/imode.h>
 #include <coreplugin/uniqueidmanager.h>
 
diff --git a/src/plugins/coreplugin/progressmanager/progressmanager.cpp b/src/plugins/coreplugin/progressmanager/progressmanager.cpp
index 968d2bb9fc8774a230fcd5fad33ac34b6f271494..392e8aafa8d951ac5d011d66953a2440808ce7d4 100644
--- a/src/plugins/coreplugin/progressmanager/progressmanager.cpp
+++ b/src/plugins/coreplugin/progressmanager/progressmanager.cpp
@@ -33,10 +33,9 @@
 
 #include "progressmanager_p.h"
 #include "progressview.h"
-#include "coreimpl.h"
 #include "baseview.h"
-
 #include "coreconstants.h"
+#include "icore.h"
 #include "uniqueidmanager.h"
 
 #include <utils/qtcassert.h>
@@ -48,7 +47,7 @@ ProgressManagerPrivate::ProgressManagerPrivate(QObject *parent)
   : ProgressManager(parent)
 {
     m_progressView = new ProgressView;
-    ICore *core = CoreImpl::instance();
+    ICore *core = ICore::instance();
     connect(core, SIGNAL(coreAboutToClose()), this, SLOT(cancelAllRunningTasks()));
 }
 
diff --git a/src/plugins/coreplugin/uniqueidmanager.h b/src/plugins/coreplugin/uniqueidmanager.h
index 0a8ed6fcd07febed01adae9713d18773e45fea48..eff119762d749b6f4c1ef0be6390deb126f0c7f4 100644
--- a/src/plugins/coreplugin/uniqueidmanager.h
+++ b/src/plugins/coreplugin/uniqueidmanager.h
@@ -47,7 +47,7 @@ public:
     UniqueIDManager();
     ~UniqueIDManager();
 
-    static UniqueIDManager* instance() { return m_instance; }
+    static UniqueIDManager *instance() { return m_instance; }
 
     bool hasUniqueIdentifier(const QString &id) const;
     int uniqueIdentifier(const QString &id);
diff --git a/src/plugins/coreplugin/versiondialog.cpp b/src/plugins/coreplugin/versiondialog.cpp
index a61e29e50d7c193bbc2e922e2aaec0e06b1ad084..5ce821a8147573bfd728231a17c596fe773f7617 100644
--- a/src/plugins/coreplugin/versiondialog.cpp
+++ b/src/plugins/coreplugin/versiondialog.cpp
@@ -34,7 +34,7 @@
 #include "versiondialog.h"
 
 #include "coreconstants.h"
-#include "coreimpl.h"
+#include "icore.h"
 
 #include <utils/qtcassert.h>
 
@@ -121,7 +121,7 @@ void VersionDialog::popupLicense()
     layout->addWidget(buttonBox);
 
     // Read file into string
-    ICore * core = CoreImpl::instance();
+    ICore *core = ICore::instance();
     QTC_ASSERT(core, return);
     QString fileName = core->resourcePath() + "/license.txt";
     QFile file(fileName);
diff --git a/src/plugins/coreplugin/welcomemode.cpp b/src/plugins/coreplugin/welcomemode.cpp
index ee66ac7f33c2add780914a40d774df0d1f2ee1da..7cd17e3ddcd627a3c1d150e588890f0a343e0ecb 100644
--- a/src/plugins/coreplugin/welcomemode.cpp
+++ b/src/plugins/coreplugin/welcomemode.cpp
@@ -34,7 +34,6 @@
 #include "welcomemode.h"
 #include "coreconstants.h"
 #include "uniqueidmanager.h"
-#include "coreimpl.h"
 #include "modemanager.h"
 
 #if !defined(QT_NO_WEBKIT)
@@ -193,7 +192,7 @@ const char* WelcomeMode::uniqueModeName() const
 QList<int> WelcomeMode::context() const
 {
     static QList<int> contexts = QList<int>()
-                                 << CoreImpl::instance()->uniqueIDManager()->uniqueIdentifier(Constants::C_WELCOME_MODE);
+                                 << UniqueIDManager::instance()->uniqueIdentifier(Constants::C_WELCOME_MODE);
     return contexts;
 }
 
@@ -250,7 +249,7 @@ void WelcomeMode::updateWelcomePage(const WelcomePageData &welcomePageData)
 void WelcomeMode::linkClicked(const QUrl &url)
 {
     QString scheme = url.scheme();
-    Core::ModeManager *modeManager = CoreImpl::instance()->modeManager();
+    Core::ModeManager *modeManager = ModeManager::instance();
     if (scheme.startsWith(QLatin1String("gh"))) {
         QString s = url.toString(QUrl::RemoveScheme);
         if (scheme == QLatin1String("gh")) {