diff --git a/core/API/DataTableManipulator/LabelFilter.php b/core/API/DataTableManipulator/LabelFilter.php
index 20ba5b273f387685560bd03457041b68c2329423..550dbde69ba976ed2ba1cfd998c10a6be68fdd00 100644
--- a/core/API/DataTableManipulator/LabelFilter.php
+++ b/core/API/DataTableManipulator/LabelFilter.php
@@ -107,7 +107,7 @@ class Piwik_API_DataTableManipulator_LabelFilter extends Piwik_API_DataTableMani
      * Use variations of the label to make it easier to specify the desired label
      *
      * Note: The HTML Encoded version must be tried first, since in Piwik_API_ResponseBuilder the $label is unsanitized
-     * via Piwik_Common::unsanitizeLabelParameter.
+     * via Common::unsanitizeLabelParameter.
      *
      * @param string $label
      * @return array
diff --git a/core/API/Proxy.php b/core/API/Proxy.php
index 723820e1eef804f796db5b6b8fc4a87765ce0301..08810ab396e52e883798b3381df1f0e992f8c589 100644
--- a/core/API/Proxy.php
+++ b/core/API/Proxy.php
@@ -154,7 +154,7 @@ class Piwik_API_Proxy
      * @param array $parametersRequest  The parameters pairs (name=>value)
      *
      * @return mixed|null
-     * @throws Exception|Piwik_Access_NoAccessException
+     * @throws Exception|Access_NoAccessException
      */
     public function call($className, $methodName, $parametersRequest)
     {
diff --git a/core/API/Request.php b/core/API/Request.php
index 503481f1852b83f0ad043738c79760897eaffa25..49ffc2a5df586976cd3f18a17380ed774ea8be24 100644
--- a/core/API/Request.php
+++ b/core/API/Request.php
@@ -10,6 +10,7 @@
  */
 use Piwik\Piwik;
 use Piwik\Common;
+use Piwik\Access;
 
 /**
  * An API request is the object used to make a call to the API and get the result.
@@ -167,7 +168,7 @@ class Piwik_API_Request
         $token_auth = Common::getRequestVar('token_auth', '', 'string', $request);
         if ($token_auth) {
             Piwik_PostEvent('API.Request.authenticate', array($token_auth));
-            Piwik_Access::getInstance()->reloadAccess();
+            Access::getInstance()->reloadAccess();
             Piwik::raiseMemoryLimitIfNecessary();
         }
     }
diff --git a/core/API/ResponseBuilder.php b/core/API/ResponseBuilder.php
index 3935f267f7ae2dbce778c1657b464319e15ff26c..80407213299faea1aa42014edee8ba626f32fb1c 100644
--- a/core/API/ResponseBuilder.php
+++ b/core/API/ResponseBuilder.php
@@ -493,8 +493,8 @@ class Piwik_API_ResponseBuilder
 
     static public function unsanitizeLabelParameter($label)
     {
-        // this is needed because Piwik_API_Proxy uses Piwik_Common::getRequestVar which in turn
-        // uses Piwik_Common::sanitizeInputValue. This causes the > that separates recursive labels
+        // this is needed because Piwik_API_Proxy uses Common::getRequestVar which in turn
+        // uses Common::sanitizeInputValue. This causes the > that separates recursive labels
         // to become > and we need to undo that here.
         $label = Common::unsanitizeInputValues($label);
         return $label;
diff --git a/core/Access.php b/core/Access.php
index 715b96aae015377ae4c07001fc9d361c1cc21989..931e958567377897f322894051711fdef2b99506 100644
--- a/core/Access.php
+++ b/core/Access.php
@@ -8,12 +8,15 @@
  * @category Piwik
  * @package Piwik
  */
+namespace Piwik;
+
 use Piwik\Config;
 use Piwik\Common;
+use Piwik\Auth;
 
 /**
  * Class to handle User Access:
- * - loads user access from the Piwik_Auth_Result object
+ * - loads user access from the AuthResult object
  * - provides easy to use API to check the permissions for the current (check* methods)
  *
  * In Piwik there are mainly 4 access levels
@@ -34,9 +37,9 @@ use Piwik\Common;
  * and he only can change the main configuration settings.
  *
  * @package Piwik
- * @subpackage Piwik_Access
+ * @subpackage Access
  */
-class Piwik_Access
+class Access
 {
     private static $instance = null;
     
@@ -142,7 +145,7 @@ class Piwik_Access
      * @param null|Piwik_Auth $auth  Auth adapter
      * @return bool  true on success, false if reloading access failed (when auth object wasn't specified and user is not enforced to be Super User)
      */
-    public function reloadAccess(Piwik_Auth $auth = null)
+    public function reloadAccess(Auth $auth = null)
     {
         if (!is_null($auth)) {
             $this->auth = $auth;
@@ -166,7 +169,7 @@ class Piwik_Access
         $this->token_auth = $result->getTokenAuth();
 
         // case the superUser is logged in
-        if ($result->getCode() == Piwik_Auth_Result::SUCCESS_SUPERUSER_AUTH_CODE) {
+        if ($result->getCode() == AuthResult::SUCCESS_SUPERUSER_AUTH_CODE) {
             return $this->reloadAccessSuperUser();
         }
         // in case multiple calls to API using different tokens, we ensure we reset it as not SU
@@ -210,7 +213,7 @@ class Piwik_Access
         $this->isSuperUser = true;
         
         try {
-            $allSitesId = Piwik_SitesManager_API::getInstance()->getAllSitesId();
+            $allSitesId = \Piwik_SitesManager_API::getInstance()->getAllSitesId();
         } catch(Exception $e) {
             $allSitesId = array();
         }
@@ -328,19 +331,19 @@ class Piwik_Access
     /**
      * Throws an exception if the user is not the SuperUser
      *
-     * @throws Piwik_Access_NoAccessException
+     * @throws Access_NoAccessException
      */
     public function checkUserIsSuperUser()
     {
         if (!$this->isSuperUser()) {
-            throw new Piwik_Access_NoAccessException(Piwik_TranslateException('General_ExceptionPrivilege', array("'superuser'")));
+            throw new NoAccessException(Piwik_TranslateException('General_ExceptionPrivilege', array("'superuser'")));
         }
     }
 
     /**
      * If the user doesn't have an ADMIN access for at least one website, throws an exception
      *
-     * @throws Piwik_Access_NoAccessException
+     * @throws Access_NoAccessException
      */
     public function checkUserHasSomeAdminAccess()
     {
@@ -349,14 +352,14 @@ class Piwik_Access
         }
         $idSitesAccessible = $this->getSitesIdWithAdminAccess();
         if (count($idSitesAccessible) == 0) {
-            throw new Piwik_Access_NoAccessException(Piwik_TranslateException('General_ExceptionPrivilegeAtLeastOneWebsite', array('admin')));
+            throw new NoAccessException(Piwik_TranslateException('General_ExceptionPrivilegeAtLeastOneWebsite', array('admin')));
         }
     }
 
     /**
      * If the user doesn't have any view permission, throw exception
      *
-     * @throws Piwik_Access_NoAccessException
+     * @throws Access_NoAccessException
      */
     public function checkUserHasSomeViewAccess()
     {
@@ -365,7 +368,7 @@ class Piwik_Access
         }
         $idSitesAccessible = $this->getSitesIdWithAtLeastViewAccess();
         if (count($idSitesAccessible) == 0) {
-            throw new Piwik_Access_NoAccessException(Piwik_TranslateException('General_ExceptionPrivilegeAtLeastOneWebsite', array('view')));
+            throw new NoAccessException(Piwik_TranslateException('General_ExceptionPrivilegeAtLeastOneWebsite', array('view')));
         }
     }
 
@@ -374,7 +377,7 @@ class Piwik_Access
      * If the user doesn't have ADMIN access for at least one website of the list, we throw an exception.
      *
      * @param int|array $idSites  List of ID sites to check
-     * @throws Piwik_Access_NoAccessException If for any of the websites the user doesn't have an ADMIN access
+     * @throws Access_NoAccessException If for any of the websites the user doesn't have an ADMIN access
      */
     public function checkUserHasAdminAccess($idSites)
     {
@@ -385,7 +388,7 @@ class Piwik_Access
         $idSitesAccessible = $this->getSitesIdWithAdminAccess();
         foreach ($idSites as $idsite) {
             if (!in_array($idsite, $idSitesAccessible)) {
-                throw new Piwik_Access_NoAccessException(Piwik_TranslateException('General_ExceptionPrivilegeAccessWebsite', array("'admin'", $idsite)));
+                throw new NoAccessException(Piwik_TranslateException('General_ExceptionPrivilegeAccessWebsite', array("'admin'", $idsite)));
             }
         }
     }
@@ -395,7 +398,7 @@ class Piwik_Access
      * If the user doesn't have VIEW or ADMIN access for at least one website of the list, we throw an exception.
      *
      * @param int|array|string $idSites  List of ID sites to check (integer, array of integers, string comma separated list of integers)
-     * @throws Piwik_Access_NoAccessException  If for any of the websites the user doesn't have an VIEW or ADMIN access
+     * @throws Access_NoAccessException  If for any of the websites the user doesn't have an VIEW or ADMIN access
      */
     public function checkUserHasViewAccess($idSites)
     {
@@ -406,7 +409,7 @@ class Piwik_Access
         $idSitesAccessible = $this->getSitesIdWithAtLeastViewAccess();
         foreach ($idSites as $idsite) {
             if (!in_array($idsite, $idSitesAccessible)) {
-                throw new Piwik_Access_NoAccessException(Piwik_TranslateException('General_ExceptionPrivilegeAccessWebsite', array("'view'", $idsite)));
+                throw new NoAccessException(Piwik_TranslateException('General_ExceptionPrivilegeAccessWebsite', array("'view'", $idsite)));
             }
         }
     }
@@ -414,7 +417,7 @@ class Piwik_Access
     /**
      * @param int|array|string $idSites
      * @return array
-     * @throws Piwik_Access_NoAccessException
+     * @throws Access_NoAccessException
      */
     protected function getIdSites($idSites)
     {
@@ -422,9 +425,9 @@ class Piwik_Access
             $idSites = $this->getSitesIdWithAtLeastViewAccess();
         }
 
-        $idSites = Piwik_Site::getIdSitesFromIdSitesString($idSites);
+        $idSites = \Piwik_Site::getIdSitesFromIdSitesString($idSites);
         if (empty($idSites)) {
-            throw new Piwik_Access_NoAccessException("The parameter 'idSite=' is missing from the request.");
+            throw new NoAccessException("The parameter 'idSite=' is missing from the request.");
         }
         return $idSites;
     }
@@ -434,8 +437,8 @@ class Piwik_Access
  * Exception thrown when a user doesn't  have sufficient access.
  *
  * @package Piwik
- * @subpackage Piwik_Access
+ * @subpackage Access
  */
-class Piwik_Access_NoAccessException extends Exception
+class NoAccessException extends \Exception
 {
 }
diff --git a/core/AssetManager.php b/core/AssetManager.php
index 5d03dee43008c7003bbc23c3a755f851df35233c..c425a92c323a60db0a0ec5f3409db3c75cb928fc 100644
--- a/core/AssetManager.php
+++ b/core/AssetManager.php
@@ -381,7 +381,7 @@ class Piwik_AssetManager
      */
     private static function isMergedAssetsDisabled()
     {
-        return Piwik_Config::getInstance()->Debug['disable_merged_assets'];
+        return Config::getInstance()->Debug['disable_merged_assets'];
     }
 
     /**
diff --git a/core/Auth.php b/core/Auth.php
index 252a31afbd6d5bd914b089b785011d95b7c3194d..67edbbabaf871673fade46566ed83230871a8777 100644
--- a/core/Auth.php
+++ b/core/Auth.php
@@ -9,13 +9,15 @@
  * @package Piwik
  */
 
+namespace Piwik;
+
 /**
  * Interface for authentication modules
  *
  * @package Piwik
  * @subpackage Piwik_Auth
  */
-interface Piwik_Auth
+interface Auth
 {
     /**
      * Authentication module's name, e.g., "Login"
@@ -27,7 +29,7 @@ interface Piwik_Auth
     /**
      * Authenticates user
      *
-     * @return Piwik_Auth_Result
+     * @return AuthResult
      */
     public function authenticate();
 }
@@ -37,10 +39,10 @@ interface Piwik_Auth
  *
  * @package Piwik
  * @subpackage Piwik_Auth
- * @see Zend_Auth_Result, libs/Zend/Auth/Result.php
+ * @see Zend_AuthResult, libs/Zend/Auth/Result.php
  * @link http://framework.zend.com/manual/en/zend.auth.html
  */
-class Piwik_Auth_Result extends Zend_Auth_Result
+class AuthResult extends \Zend_Auth_Result
 {
     /**
      * token_auth parameter used to authenticate in the API
@@ -52,7 +54,7 @@ class Piwik_Auth_Result extends Zend_Auth_Result
     const SUCCESS_SUPERUSER_AUTH_CODE = 42;
 
     /**
-     * Constructor for Piwik_Auth_Result
+     * Constructor for AuthResult
      *
      * @param int $code
      * @param string $login identity
@@ -61,7 +63,7 @@ class Piwik_Auth_Result extends Zend_Auth_Result
      */
     public function __construct($code, $login, $token_auth, array $messages = array())
     {
-        // Piwik_Auth_Result::SUCCESS_SUPERUSER_AUTH_CODE, Piwik_Auth_Result::SUCCESS, Piwik_Auth_Result::FAILURE
+        // AuthResult::SUCCESS_SUPERUSER_AUTH_CODE, AuthResult::SUCCESS, AuthResult::FAILURE
         $this->_code = (int)$code;
         $this->_identity = $login;
         $this->_messages = $messages;
diff --git a/core/Controller.php b/core/Controller.php
index 84fe4734a9706354f89be5893d16094c06e25ec4..55857f7ce81b48107987b258e8137bbe6f629d76 100644
--- a/core/Controller.php
+++ b/core/Controller.php
@@ -11,6 +11,7 @@
 use Piwik\Config;
 use Piwik\Piwik;
 use Piwik\Common;
+use Piwik\Access;
 
 /**
  * Parent class of all plugins Controllers (located in /plugins/PluginName/Controller.php
@@ -248,7 +249,7 @@ abstract class Piwik_Controller
      * - period: day, week, month, year
      *
      * @param array $paramsToSet  array( 'date' => 'last50', 'viewDataTable' =>'sparkline' )
-     * @throws Piwik_Access_NoAccessException
+     * @throws Access_NoAccessException
      * @return array
      */
     protected function getGraphParamsModified($paramsToSet = array())
@@ -274,7 +275,7 @@ abstract class Piwik_Controller
         }
 
         if (is_null($this->site)) {
-            throw new Piwik_Access_NoAccessException("Website not initialized, check that you are logged in and/or using the correct token_auth.");
+            throw new Access_NoAccessException("Website not initialized, check that you are logged in and/or using the correct token_auth.");
         }
         $paramDate = self::getDateRangeRelativeToEndDate($period, $range, $endDate, $this->site);
 
@@ -451,7 +452,7 @@ abstract class Piwik_Controller
     protected function setBasicVariablesView($view)
     {
         $view->debugTrackVisitsInsidePiwikUI = Config::getInstance()->Debug['track_visits_inside_piwik_ui'];
-        $view->isSuperUser = Piwik_Access::getInstance()->isSuperUser();
+        $view->isSuperUser = Access::getInstance()->isSuperUser();
         $view->hasSomeAdminAccess = Piwik::isUserHasSomeAdminAccess();
         $view->isCustomLogo = Config::getInstance()->branding['use_custom_logo'];
         $view->logoHeader = Piwik_API_API::getInstance()->getHeaderLogoUrl();
@@ -745,13 +746,13 @@ abstract class Piwik_Controller
      * within the site.  The token should never appear in the browser's
      * address bar.
      *
-     * @throws Piwik_Access_NoAccessException  if token doesn't match
+     * @throws Access_NoAccessException  if token doesn't match
      * @return void
      */
     protected function checkTokenInUrl()
     {
         if (Common::getRequestVar('token_auth', false) != Piwik::getCurrentUserTokenAuth()) {
-            throw new Piwik_Access_NoAccessException(Piwik_TranslateException('General_ExceptionInvalidToken'));
+            throw new Access_NoAccessException(Piwik_TranslateException('General_ExceptionInvalidToken'));
         }
     }
 
diff --git a/core/DataFiles/SearchEngines.php b/core/DataFiles/SearchEngines.php
index 3dacdb1bd36c57fbd739ab130187ac301488de7f..7df02fb1c0daa982c9fd989a01a60c00854d33a8 100644
--- a/core/DataFiles/SearchEngines.php
+++ b/core/DataFiles/SearchEngines.php
@@ -555,7 +555,7 @@ if (!isset($GLOBALS['Piwik_SearchEngines'])) {
         'search.handycafe.com'           => array('InfoSpace', 'q'),
 
         /*
-         * Other InfoSpace powered metasearches are handled in Piwik_Common::extractSearchEngineInformationFromUrl()
+         * Other InfoSpace powered metasearches are handled in Common::extractSearchEngineInformationFromUrl()
          *
          * This includes sites such as:
          * - search.nation.com
diff --git a/core/FrontController.php b/core/FrontController.php
index a90f4b8554b96f1395da8bd89e431655714bbec4..a66a093cb8ac4320323fcc685ef5bf6316731018 100644
--- a/core/FrontController.php
+++ b/core/FrontController.php
@@ -11,6 +11,7 @@
 use Piwik\Config;
 use Piwik\Piwik;
 use Piwik\Common;
+use Piwik\Access;
 
 /**
  * @see core/PluginsManager.php
@@ -20,7 +21,6 @@ use Piwik\Common;
 require_once PIWIK_INCLUDE_PATH . '/core/PluginsManager.php';
 require_once PIWIK_INCLUDE_PATH . '/core/Translate.php';
 require_once PIWIK_INCLUDE_PATH . '/core/Option.php';
-require_once PIWIK_INCLUDE_PATH . '/core/Piwik.php';
 
 /**
  * Front controller.
@@ -127,7 +127,7 @@ class Piwik_FrontController
 
         try {
             return call_user_func_array(array($params[0], $params[1]), $params[2]);
-        } catch (Piwik_Access_NoAccessException $e) {
+        } catch (Access_NoAccessException $e) {
             Piwik_PostEvent('FrontController.NoAccessException', array($e), $pending = true);
         } catch (Exception $e) {
             $debugTrace = $e->getTraceAsString();
@@ -269,7 +269,7 @@ class Piwik_FrontController
             Piwik::createLogObject();
 
             // Init the Access object, so that eg. core/Updates/* can enforce Super User and use some APIs
-            Piwik_Access::getInstance();
+            Access::getInstance();
 
             Piwik_PostEvent('FrontController.dispatchCoreAndPluginUpdatesScreen');
 
@@ -289,7 +289,7 @@ class Piwik_FrontController
 									<code>Plugins[] = Login</code><br />
 									under the <code>[Plugins]</code> section in your config/config.ini.php");
             }
-            Piwik_Access::getInstance()->reloadAccess($authAdapter);
+            Access::getInstance()->reloadAccess($authAdapter);
 
             // Force the auth to use the token_auth if specified, so that embed dashboard
             // and all other non widgetized controller methods works fine
diff --git a/core/JqplotDataGenerator.php b/core/JqplotDataGenerator.php
index c6e9845e8bebc86fa842a37fa611176a487408d8..d99d986cc9f9f7894594f414d807b353aaf61540 100644
--- a/core/JqplotDataGenerator.php
+++ b/core/JqplotDataGenerator.php
@@ -9,6 +9,8 @@
  * @package Piwik
  */
 
+use Piwik\Common;
+
 /**
  * Generates JSON data used to configure and populate JQPlot graphs.
  * 
@@ -159,7 +161,7 @@ class Piwik_JqplotDataGenerator
 
     private function deriveUnitsFromRequestedColumnNames()
     {
-        $idSite = Piwik_Common::getRequestVar('idSite', null, 'int');
+        $idSite = Common::getRequestVar('idSite', null, 'int');
         
         $units = array();
         foreach ($this->properties['columns_to_display'] as $columnName) {
@@ -176,7 +178,7 @@ class Piwik_JqplotDataGenerator
     protected function addSeriesPickerToView()
     {
         if (count($this->properties['selectable_columns'])
-            && Piwik_Common::getRequestVar('showSeriesPicker', 1) == 1
+            && Common::getRequestVar('showSeriesPicker', 1) == 1
         ) {
             $selectableColumns = array();
             foreach ($this->properties['selectable_columns'] as $column) {
diff --git a/core/JqplotDataGenerator/Evolution.php b/core/JqplotDataGenerator/Evolution.php
index 559ec589b5e56f9e1c66d7a268cce73d234ce6f5..50fd2a61a2b3f242554e017658f8ae075d4d162c 100644
--- a/core/JqplotDataGenerator/Evolution.php
+++ b/core/JqplotDataGenerator/Evolution.php
@@ -45,7 +45,7 @@ class Piwik_JqplotDataGenerator_Evolution extends Piwik_JqplotDataGenerator
             $uniqueIdsDataTable[] = $idDataTable;
         }
 
-        $idSite = Piwik_Common::getRequestVar('idSite', null, 'int');
+        $idSite = Common::getRequestVar('idSite', null, 'int');
         $requestedColumnNames = $this->properties['columns_to_display'];
         $units = $this->getUnitsForColumnsToDisplay();
 
diff --git a/core/Loader.php b/core/Loader.php
index d46a57b01ee3326846cbbcaa30f247d27117b7a0..c0d2d1462234a1ef34b08dd4a06ab4e05e1e19e3 100644
--- a/core/Loader.php
+++ b/core/Loader.php
@@ -26,14 +26,18 @@ class Piwik_Loader
      * @return string Class file name
      * @throws Exception if class name is invalid
      */
-    protected static function getClassFileName($class)
+    protected static function  getClassFileName($class)
     {
-        if (!preg_match("/^[A-Za-z0-9_]+$/D", $class)) {
+        if (!preg_match('/^[A-Za-z0-9_\\\\]+$/D', $class)) {
             throw new Exception("Invalid class name \"$class\".");
         }
 
+        // prefixed class
         $class = str_replace('_', '/', $class);
 
+        // namespace \Piwik\Common
+        $class = str_replace('\\', '/', $class);
+
         if ($class == 'Piwik') {
             return $class;
         }
@@ -54,7 +58,8 @@ class Piwik_Loader
     public static function loadClass($class)
     {
         $classPath = self::getClassFileName($class);
-        if ($class == 'Piwik' || !strncmp($class, 'Piwik_', 6)) {
+        if ($class == 'Piwik'
+            || !strncmp($class, 'Piwik', 5) /* catches Piwik_ and Piwik\ */ ) {
             // Piwik classes are in core/ or plugins/
             do {
                 // auto-discover class location
diff --git a/core/Piwik.php b/core/Piwik.php
index f788d50f89673a04931730a914dd073a8073a265..0e07c888ca849e05c3ead11630e438b140d2f396 100644
--- a/core/Piwik.php
+++ b/core/Piwik.php
@@ -12,8 +12,8 @@ namespace Piwik;
 
 use Exception;
 use Piwik\Config;
-use Piwik_Access;
-use Piwik_Access_NoAccessException;
+use Piwik\Access;
+use Access_NoAccessException;
 use Piwik_AssetManager;
 use Piwik\Common;
 use Piwik_Db_Adapter;
@@ -40,8 +40,6 @@ use Zend_Registry;
  * @see core/Translate.php
  */
 require_once PIWIK_INCLUDE_PATH . '/core/Translate.php';
-require_once PIWIK_INCLUDE_PATH . '/core/Common.php';
-require_once PIWIK_INCLUDE_PATH . '/core/Config.php';
 
 /**
  * Main piwik helper class.
@@ -387,11 +385,15 @@ class Piwik
      */
     public static function globr($sDir, $sPattern, $nFlags = null)
     {
-        if (($aFiles = _glob("$sDir/$sPattern", $nFlags)) == false) {
+        if (($aFiles = \_glob("$sDir/$sPattern", $nFlags)) == false) {
             $aFiles = array();
         }
-        if (($aDirs = _glob("$sDir/*", GLOB_ONLYDIR)) != false) {
+        if (($aDirs = \_glob("$sDir/*", GLOB_ONLYDIR)) != false) {
             foreach ($aDirs as $sSubDir) {
+                // avoid infinite recursion of symlink'ed directories
+                if(strpos($sSubDir, "tests/PHPUnit/proxy/tests/PHPUnit/proxy") !== false) {
+                    continue;
+                }
                 $aSubFiles = self::globr($sSubDir, $sPattern, $nFlags);
                 $aFiles = array_merge($aFiles, $aSubFiles);
             }
@@ -1591,7 +1593,7 @@ class Piwik
      */
     static public function getSuperUserLogin()
     {
-        return Piwik_Access::getInstance()->getSuperUserLogin();
+        return Access::getInstance()->getSuperUserLogin();
     }
 
     /**
@@ -1612,7 +1614,7 @@ class Piwik
      */
     static public function getCurrentUserLogin()
     {
-        return Piwik_Access::getInstance()->getLogin();
+        return Access::getInstance()->getLogin();
     }
 
     /**
@@ -1622,7 +1624,7 @@ class Piwik
      */
     static public function getCurrentUserTokenAuth()
     {
-        return Piwik_Access::getInstance()->getTokenAuth();
+        return Access::getInstance()->getTokenAuth();
     }
 
     /**
@@ -1646,7 +1648,7 @@ class Piwik
      * Check that current user is either the specified user or the superuser
      *
      * @param string $theUser
-     * @throws Piwik_Access_NoAccessException  if the user is neither the super user nor the user $theUser
+     * @throws Access_NoAccessException  if the user is neither the super user nor the user $theUser
      */
     static public function checkUserIsSuperUserOrTheUser($theUser)
     {
@@ -1655,8 +1657,8 @@ class Piwik
                 // or to the super user
                 Piwik::checkUserIsSuperUser();
             }
-        } catch (Piwik_Access_NoAccessException $e) {
-            throw new Piwik_Access_NoAccessException(Piwik_Translate('General_ExceptionCheckUserIsSuperUserOrTheUser', array($theUser)));
+        } catch (Access_NoAccessException $e) {
+            throw new Access_NoAccessException(Piwik_Translate('General_ExceptionCheckUserIsSuperUserOrTheUser', array($theUser)));
         }
     }
 
@@ -1688,12 +1690,12 @@ class Piwik
     /**
      * Checks if user is not the anonymous user.
      *
-     * @throws Piwik_Access_NoAccessException  if user is anonymous.
+     * @throws Access_NoAccessException  if user is anonymous.
      */
     static public function checkUserIsNotAnonymous()
     {
         if (self::isUserIsAnonymous()) {
-            throw new Piwik_Access_NoAccessException(Piwik_Translate('General_YouMustBeLoggedIn'));
+            throw new \Piwik\NoAccessException(Piwik_Translate('General_YouMustBeLoggedIn'));
         }
     }
 
@@ -1705,7 +1707,7 @@ class Piwik
      */
     static public function setUserIsSuperUser($bool = true)
     {
-        Piwik_Access::getInstance()->setSuperUser($bool);
+        Access::getInstance()->setSuperUser($bool);
     }
 
     /**
@@ -1715,7 +1717,7 @@ class Piwik
      */
     static public function checkUserIsSuperUser()
     {
-        Piwik_Access::getInstance()->checkUserIsSuperUser();
+        Access::getInstance()->checkUserIsSuperUser();
     }
 
     /**
@@ -1742,7 +1744,7 @@ class Piwik
      */
     static public function checkUserHasAdminAccess($idSites)
     {
-        Piwik_Access::getInstance()->checkUserHasAdminAccess($idSites);
+        Access::getInstance()->checkUserHasAdminAccess($idSites);
     }
 
     /**
@@ -1767,7 +1769,7 @@ class Piwik
      */
     static public function checkUserHasSomeAdminAccess()
     {
-        Piwik_Access::getInstance()->checkUserHasSomeAdminAccess();
+        Access::getInstance()->checkUserHasSomeAdminAccess();
     }
 
     /**
@@ -1794,7 +1796,7 @@ class Piwik
      */
     static public function checkUserHasViewAccess($idSites)
     {
-        Piwik_Access::getInstance()->checkUserHasViewAccess($idSites);
+        Access::getInstance()->checkUserHasViewAccess($idSites);
     }
 
     /**
@@ -1819,7 +1821,7 @@ class Piwik
      */
     static public function checkUserHasSomeViewAccess()
     {
-        Piwik_Access::getInstance()->checkUserHasSomeViewAccess();
+        Access::getInstance()->checkUserHasSomeViewAccess();
     }
 
     /*
@@ -2311,7 +2313,7 @@ class Piwik
      * Performs a batch insert into a specific table using either LOAD DATA INFILE or plain INSERTs,
      * as a fallback. On MySQL, LOAD DATA INFILE is 20x faster than a series of plain INSERTs.
      *
-     * @param string $tableName  PREFIXED table name! you must call Piwik_Common::prefixTable() before passing the table name
+     * @param string $tableName  PREFIXED table name! you must call Common::prefixTable() before passing the table name
      * @param array $fields     array of unquoted field names
      * @param array $values     array of data to be inserted
      * @param bool $throwException Whether to throw an exception that was caught while trying
@@ -2372,7 +2374,7 @@ class Piwik
      *
      * NOTE: you should use tableInsertBatch() which will fallback to this function if LOAD DATA INFILE not available
      *
-     * @param string $tableName            PREFIXED table name! you must call Piwik_Common::prefixTable() before passing the table name
+     * @param string $tableName            PREFIXED table name! you must call Common::prefixTable() before passing the table name
      * @param array $fields               array of unquoted field names
      * @param array $values               array of data to be inserted
      * @param bool $ignoreWhenDuplicate  Ignore new rows that contain unique key values that duplicate old rows
diff --git a/core/Tracker.php b/core/Tracker.php
index d3d9a765b61fe7dd3bfc6f582b60551006cf76fd..8e0fac450b7fdae8df57c38752ddef42699c30dd 100644
--- a/core/Tracker.php
+++ b/core/Tracker.php
@@ -11,6 +11,7 @@
 use Piwik\Config;
 use Piwik\Piwik;
 use Piwik\Common;
+use Piwik\Access;
 
 /**
  * Class used by the logging script piwik.php called by the javascript tag.
@@ -342,7 +343,7 @@ class Piwik_Tracker
             require_once PIWIK_INCLUDE_PATH . '/core/Loader.php';
             require_once PIWIK_INCLUDE_PATH . '/core/Option.php';
             
-            $access = Piwik_Access::getInstance();
+            $access = Access::getInstance();
             $config = Config::getInstance();
             
             try {
diff --git a/core/Tracker/Visit.php b/core/Tracker/Visit.php
index d2d87d121e9aeba40a4953027d1bbfb327e7c945..da14bb6de0209c0dc4f77fb4c9a77347f82ba40a 100644
--- a/core/Tracker/Visit.php
+++ b/core/Tracker/Visit.php
@@ -1024,7 +1024,7 @@ class Piwik_Tracker_Visit implements Piwik_Tracker_Visit_Interface
     /**
      * Returns either
      * - "-1" for a known visitor
-     * - at least 16 char identifier in hex @see Piwik_Common::generateUniqId()
+     * - at least 16 char identifier in hex @see Common::generateUniqId()
      * @return int|string
      */
     protected function getVisitorUniqueId()
diff --git a/core/Updates/1.8.3-b1.php b/core/Updates/1.8.3-b1.php
index 3f3d579e5803bdda538a7a2b0f5a4b7247e8d6df..77b9ffdf14b4e1af8700081d5147fc89da09cec7 100644
--- a/core/Updates/1.8.3-b1.php
+++ b/core/Updates/1.8.3-b1.php
@@ -49,11 +49,11 @@ class Piwik_Updates_1_8_3_b1 extends Piwik_Updates
 
         try {
 
-            // Piwik_Common::prefixTable('pdf') has been heavily refactored to be more generic
+            // Common::prefixTable('pdf') has been heavily refactored to be more generic
             // The following actions are taken in this update script :
-            // - create the new generic report table Piwik_Common::prefixTable('report')
-            // - migrate previous reports, if any, from Piwik_Common::prefixTable('pdf') to Piwik_Common::prefixTable('report')
-            // - delete Piwik_Common::prefixTable('pdf')
+            // - create the new generic report table Common::prefixTable('report')
+            // - migrate previous reports, if any, from Common::prefixTable('pdf') to Common::prefixTable('report')
+            // - delete Common::prefixTable('pdf')
 
             $reports = Piwik_FetchAll('SELECT * FROM `' . Common::prefixTable('pdf') . '`');
             foreach ($reports AS $report) {
diff --git a/core/ViewDataTable.php b/core/ViewDataTable.php
index f4d0cbd3d8fde3e9b3b5a953beed9dc57d76a83c..be9770ce6d777d2663c0ab3ffea1fdbd3660ce2e 100644
--- a/core/ViewDataTable.php
+++ b/core/ViewDataTable.php
@@ -858,7 +858,7 @@ abstract class Piwik_ViewDataTable
 
         // we escape the values that will be displayed in the javascript footer of each datatable
         // to make sure there is no malicious code injected (the value are already htmlspecialchar'ed as they
-        // are loaded with Piwik_Common::getRequestVar()
+        // are loaded with Common::getRequestVar()
         foreach ($javascriptVariablesToSet as &$value) {
             if (is_array($value)) {
                 $value = array_map('addslashes', $value);
diff --git a/core/ViewDataTable/GenerateGraphHTML.php b/core/ViewDataTable/GenerateGraphHTML.php
index 71a7787cb640935886e67979a89bafc9bc9adf3a..2543d2a64c1c802b9c605ffeacaf41ead9964cdc 100644
--- a/core/ViewDataTable/GenerateGraphHTML.php
+++ b/core/ViewDataTable/GenerateGraphHTML.php
@@ -134,7 +134,7 @@ abstract class Piwik_ViewDataTable_GenerateGraphHTML extends Piwik_ViewDataTable
         // selectable columns
         if ($this->graphType != 'evolution') {
             $selectableColumns = array('nb_visits', 'nb_actions');
-            if (Piwik_Common::getRequestVar('period', false) == 'day') {
+            if (Common::getRequestVar('period', false) == 'day') {
                 $selectableColumns[] = 'nb_uniq_visitors';
             }
             $this->viewProperties['selectable_columns'] = $selectableColumns;
diff --git a/core/ViewDataTable/GenerateGraphHTML/ChartEvolution.php b/core/ViewDataTable/GenerateGraphHTML/ChartEvolution.php
index 0c316f84ad0eff8129ece6afc6abfc65a458ebb5..125c1c92ed65d1df616bb2c2bf056a80cd49b14d 100644
--- a/core/ViewDataTable/GenerateGraphHTML/ChartEvolution.php
+++ b/core/ViewDataTable/GenerateGraphHTML/ChartEvolution.php
@@ -8,6 +8,7 @@
  * @category Piwik
  * @package Piwik
  */
+
 use Piwik\Common;
 
 /**
@@ -176,7 +177,7 @@ class Piwik_ViewDataTable_GenerateGraphHTML_ChartEvolution extends Piwik_ViewDat
         // period will be overridden when 'range' is requested in the UI // TODO: this code probably shouldn't be here...
         // but the graph will display for each day of the range.
         // Default 'range' behavior is to return the 'sum' for the range
-        if (Piwik_Common::getRequestVar('period', false) == 'range') {
+        if (Common::getRequestVar('period', false) == 'range') {
             $this->viewProperties['request_parameters_to_modify']['period'] = 'day';
         }
 
diff --git a/core/ViewDataTable/HtmlTable.php b/core/ViewDataTable/HtmlTable.php
index e7d409b8539d3ef2d43718c0e3e3fb76888ddee1..dc23e95d2b505cc5e9074c3710c3a3f4e3ad346b 100644
--- a/core/ViewDataTable/HtmlTable.php
+++ b/core/ViewDataTable/HtmlTable.php
@@ -60,7 +60,7 @@ class Piwik_ViewDataTable_HtmlTable extends Piwik_ViewDataTable
 
     /**
      * @see Piwik_ViewDataTable::main()
-     * @throws Exception|Piwik_Access_NoAccessException
+     * @throws Exception|Access_NoAccessException
      * @return null
      */
     public function main()
@@ -73,7 +73,7 @@ class Piwik_ViewDataTable_HtmlTable extends Piwik_ViewDataTable
         $this->isDataAvailable = true;
         try {
             $this->loadDataTableFromAPI();
-        } catch (Piwik_Access_NoAccessException $e) {
+        } catch (Access_NoAccessException $e) {
             throw $e;
         } catch (Exception $e) {
             Piwik::log("Failed to get data from API: " . $e->getMessage());
diff --git a/libs/upgradephp/upgrade.php b/libs/upgradephp/upgrade.php
index 19df79a6f6de3d786a183c3fbeca2f349be863ab..4d6bd7bbe2bdfbd32d39c6ebb672c1136d02d2ef 100644
--- a/libs/upgradephp/upgrade.php
+++ b/libs/upgradephp/upgrade.php
@@ -35,7 +35,7 @@
  * Any contribution is appreciated. <milky*users#sf#net>
  *
  */
-use Piwik\Core\Common;
+use Piwik\Common;
 
 /**
  * @since PHP 5
diff --git a/plugins/API/API.php b/plugins/API/API.php
index 2dc0ce766db2120064f6cf1a4754ee84025d2699..f55d83b9343610d216d51883e4a6f4342fc076da 100644
--- a/plugins/API/API.php
+++ b/plugins/API/API.php
@@ -146,7 +146,7 @@ class Piwik_API_API
             'segment'        => 'visitorId',
             'acceptedValues' => '34c31e04394bdc63 - any 16 Hexadecimal chars ID, which can be fetched using the Tracking API function getVisitorId()',
             'sqlSegment'     => 'log_visit.idvisitor',
-            'sqlFilter'      => array('Piwik_Common', 'convertVisitorIdToBin'),
+            'sqlFilter'      => array('Piwik\Common', 'convertVisitorIdToBin'),
             'permission'     => $isAuthenticatedWithViewAccess,
         );
         $segments[] = array(
diff --git a/plugins/ExamplePlugin/Controller.php b/plugins/ExamplePlugin/Controller.php
index 1bcb01479bfb0246c869bb27ad052247e5598f79..33b8e1d605cf74c18df48f4ef5df4d9b2dd625ae 100644
--- a/plugins/ExamplePlugin/Controller.php
+++ b/plugins/ExamplePlugin/Controller.php
@@ -74,15 +74,15 @@ class Piwik_ExamplePlugin_Controller extends Piwik_Controller
         $out .= '<h3>Accessible from your plugin controller</h3>';
 
         $out .= '<code>$this->date</code> = current selected <b>Piwik_Date</b> object (<a href="https://github.com/piwik/piwik/blob/master/core/Date.php">class</a>)<br />';
-        $out .= '<code>$period = Piwik_Common::getRequestVar("period");</code> - Get the current selected period<br />';
-        $out .= '<code>$idSite = Piwik_Common::getRequestVar("idSite");</code> - Get the selected idSite<br />';
+        $out .= '<code>$period = Common::getRequestVar("period");</code> - Get the current selected period<br />';
+        $out .= '<code>$idSite = Common::getRequestVar("idSite");</code> - Get the selected idSite<br />';
         $out .= '<code>$site = new Piwik_Site($idSite);</code> - Build the Piwik_Site object (<a href="https://github.com/piwik/piwik/tree/master/core/Site.php">class</a>)<br />';
         $out .= '<code>$this->str_date</code> = current selected date in YYYY-MM-DD format<br />';
 
         $out .= '<h3>Misc</h3>';
         $out .= '<code>Piwik_AddMenu( $mainMenuName, $subMenuName, $url );</code> - Adds an entry to the menu in the Piwik interface (See the example in the <a href="https://github.com/piwik/piwik/blob/1.0/plugins/UserCountry/UserCountry.php#L76">UserCountry Plugin file</a>)<br />';
         $out .= '<code>Piwik_AddWidget( $widgetCategory, $widgetName, $controllerName, $controllerAction, $customParameters = array());</code> - Adds a widget that users can add in the dashboard, or export using the Widgets link at the top of the screen. See the example in the <a href="https://github.com/piwik/piwik/blob/1.0/plugins/UserCountry/UserCountry.php#L70">UserCountry Plugin file</a> or any other plugin)<br />';
-        $out .= '<code>Piwik_Common::prefixTable("site")</code> = <b>' . Common::prefixTable("site") . '</b><br />';
+        $out .= '<code>Common::prefixTable("site")</code> = <b>' . Common::prefixTable("site") . '</b><br />';
 
 
         $out .= '<h2>User access</h2>';
diff --git a/plugins/Installation/Controller.php b/plugins/Installation/Controller.php
index 7e24ebc155e4b9381cdd7b9786d77f01945fed77..05d3913043bf653aab94c96864555378aec52c2c 100644
--- a/plugins/Installation/Controller.php
+++ b/plugins/Installation/Controller.php
@@ -10,6 +10,7 @@
  */
 use Piwik\Piwik;
 use Piwik\Common;
+use Piwik\Access;
 
 /**
  * Installation controller
@@ -264,7 +265,7 @@ class Piwik_Installation_Controller extends Piwik_Controller_Admin
             $baseTablesInstalled = count($tablesInstalled) - count($archiveTables);
             $minimumCountPiwikTables = 17;
 
-            Piwik_Access::getInstance();
+            Access::getInstance();
             Piwik::setUserIsSuperUser();
             if ($baseTablesInstalled >= $minimumCountPiwikTables &&
                 count(Piwik_SitesManager_API::getInstance()->getAllSitesId()) > 0 &&
diff --git a/plugins/Login/Auth.php b/plugins/Login/Auth.php
index e8de6d3c3885797fc9a8bb4754b051c59436cd1b..1f643b2843327c566901ddab161f74bb542f66ad 100644
--- a/plugins/Login/Auth.php
+++ b/plugins/Login/Auth.php
@@ -10,12 +10,14 @@
  */
 use Piwik\Config;
 use Piwik\Common;
+use Piwik\Auth;
+use Piwik\AuthResult;
 
 /**
  *
  * @package Piwik_Login
  */
-class Piwik_Login_Auth implements Piwik_Auth
+class Piwik_Login_Auth implements Auth
 {
     protected $login = null;
     protected $token_auth = null;
@@ -33,7 +35,7 @@ class Piwik_Login_Auth implements Piwik_Auth
     /**
      * Authenticates user
      *
-     * @return Piwik_Auth_Result
+     * @return AuthResult
      */
     public function authenticate()
     {
@@ -43,7 +45,7 @@ class Piwik_Login_Auth implements Piwik_Auth
 
         if (is_null($this->login)) {
             if ($this->token_auth === $rootToken) {
-                return new Piwik_Auth_Result(Piwik_Auth_Result::SUCCESS_SUPERUSER_AUTH_CODE, $rootLogin, $this->token_auth);
+                return new AuthResult(AuthResult::SUCCESS_SUPERUSER_AUTH_CODE, $rootLogin, $this->token_auth);
             }
 
             $login = Piwik_FetchOne(
@@ -53,7 +55,7 @@ class Piwik_Login_Auth implements Piwik_Auth
                 array($this->token_auth)
             );
             if (!empty($login)) {
-                return new Piwik_Auth_Result(Piwik_Auth_Result::SUCCESS, $login, $this->token_auth);
+                return new AuthResult(AuthResult::SUCCESS, $login, $this->token_auth);
             }
         } else if (!empty($this->login)) {
             if ($this->login === $rootLogin
@@ -61,7 +63,7 @@ class Piwik_Login_Auth implements Piwik_Auth
                 || $rootToken === $this->token_auth
             ) {
                 $this->setTokenAuth($rootToken);
-                return new Piwik_Auth_Result(Piwik_Auth_Result::SUCCESS_SUPERUSER_AUTH_CODE, $rootLogin, $this->token_auth);
+                return new AuthResult(AuthResult::SUCCESS_SUPERUSER_AUTH_CODE, $rootLogin, $this->token_auth);
             }
 
             $login = $this->login;
@@ -76,11 +78,11 @@ class Piwik_Login_Auth implements Piwik_Auth
                     || $userToken === $this->token_auth)
             ) {
                 $this->setTokenAuth($userToken);
-                return new Piwik_Auth_Result(Piwik_Auth_Result::SUCCESS, $login, $userToken);
+                return new AuthResult(AuthResult::SUCCESS, $login, $userToken);
             }
         }
 
-        return new Piwik_Auth_Result(Piwik_Auth_Result::FAILURE, $this->login, $this->token_auth);
+        return new AuthResult(AuthResult::FAILURE, $this->login, $this->token_auth);
     }
 
     /**
diff --git a/plugins/Overlay/API.php b/plugins/Overlay/API.php
index 83db709503b2e4e7d23ae3ddaf484342a0cb862c..9db64023c8c1ec8140fbed80240797140d1d8918 100644
--- a/plugins/Overlay/API.php
+++ b/plugins/Overlay/API.php
@@ -1,6 +1,7 @@
 <?php
 use Piwik\Config;
 use Piwik\Piwik;
+use Piwik\Access;
 
 /**
  * Piwik - Open source web analytics
@@ -113,7 +114,7 @@ class Piwik_Overlay_API
             array(&$notification, $allowCookieAuthentication = true));
 
         $auth = Zend_Registry::get('auth');
-        $success = Piwik_Access::getInstance()->reloadAccess($auth);
+        $success = Access::getInstance()->reloadAccess($auth);
 
         if (!$success) {
             throw new Exception('Authentication failed');
diff --git a/plugins/Referers/Controller.php b/plugins/Referers/Controller.php
index bff47a6dd736129c9afd5a03ec5eb6e3fcdb7b70..050965a734a8ecfc8b8adf7dcad1603b9c0f6aeb 100644
--- a/plugins/Referers/Controller.php
+++ b/plugins/Referers/Controller.php
@@ -656,7 +656,7 @@ function DisplayTopKeywords($url = "")
     /**
      * Returns the i18n-ized label for a referrer type.
      *
-     * @param int $typeReferrer The referrer type. Referrer types are defined in Piwik_Common class.
+     * @param int $typeReferrer The referrer type. Referrer types are defined in Common class.
      * @return string The i18n-ized label.
      */
     public static function getTranslatedReferrerTypeLabel($typeReferrer)
@@ -668,7 +668,7 @@ function DisplayTopKeywords($url = "")
     /**
      * Returns the URL for the sparkline of visits with a specific referrer type.
      *
-     * @param int $referrerType The referrer type. Referrer types are defined in Piwik_Common class.
+     * @param int $referrerType The referrer type. Referrer types are defined in Common class.
      * @return string The URL that can be used to get a sparkline image.
      */
     private function getReferrerUrlSparkline($referrerType)
diff --git a/plugins/SitesManager/API.php b/plugins/SitesManager/API.php
index 1400d50008d6ed3e955ae896c3012fbdd556a6d6..667258c327917d20bf55d2bc6f048d4113bd8863 100644
--- a/plugins/SitesManager/API.php
+++ b/plugins/SitesManager/API.php
@@ -10,6 +10,7 @@
  */
 use Piwik\Piwik;
 use Piwik\Common;
+use Piwik\Access;
 
 /**
  * The SitesManager API gives you full control on Websites in Piwik (create, update and delete), and many methods to retrieve websites based on various attributes.
@@ -289,7 +290,7 @@ class Piwik_SitesManager_API
      */
     public function getSitesIdWithAdminAccess()
     {
-        $sitesId = Piwik_Access::getInstance()->getSitesIdWithAdminAccess();
+        $sitesId = Access::getInstance()->getSitesIdWithAdminAccess();
         return $sitesId;
     }
 
@@ -301,7 +302,7 @@ class Piwik_SitesManager_API
      */
     public function getSitesIdWithViewAccess()
     {
-        return Piwik_Access::getInstance()->getSitesIdWithViewAccess();
+        return Access::getInstance()->getSitesIdWithViewAccess();
     }
 
     /**
@@ -320,14 +321,14 @@ class Piwik_SitesManager_API
             && (Piwik::isUserIsSuperUserOrTheUser($_restrictSitesToLogin)
                 || Piwik_TaskScheduler::isTaskBeingExecuted())
         ) {
-            $accessRaw = Piwik_Access::getInstance()->getRawSitesWithSomeViewAccess($_restrictSitesToLogin);
+            $accessRaw = Access::getInstance()->getRawSitesWithSomeViewAccess($_restrictSitesToLogin);
             $sitesId = array();
             foreach ($accessRaw as $access) {
                 $sitesId[] = $access['idsite'];
             }
             return $sitesId;
         } else {
-            return Piwik_Access::getInstance()->getSitesIdWithAtLeastViewAccess();
+            return Access::getInstance()->getSitesIdWithAtLeastViewAccess();
         }
     }
 
@@ -392,12 +393,12 @@ class Piwik_SitesManager_API
                 'SELECT idsite
                 FROM ' . Common::prefixTable('site') . '
 					WHERE (main_url = ? OR main_url = ?)' .
-                    'AND idsite IN (' . Piwik_Access::getSqlAccessSite('idsite') . ') ' .
+                    'AND idsite IN (' . Access::getSqlAccessSite('idsite') . ') ' .
                     'UNION
                     SELECT idsite
                     FROM ' . Common::prefixTable('site_url') . '
 					WHERE (url = ? OR url = ?)' .
-                    'AND idsite IN (' . Piwik_Access::getSqlAccessSite('idsite') . ')',
+                    'AND idsite IN (' . Access::getSqlAccessSite('idsite') . ')',
                 array($url, $urlBis, $login, $url, $urlBis, $login));
         }
 
@@ -532,7 +533,7 @@ class Piwik_SitesManager_API
         $this->insertSiteUrls($idSite, $urls);
 
         // we reload the access list which doesn't yet take in consideration this new website
-        Piwik_Access::getInstance()->reloadAccess();
+        Access::getInstance()->reloadAccess();
         $this->postUpdateWebsite($idSite);
 
         Piwik_PostEvent('SitesManager.addSite', array($idSite));
diff --git a/plugins/UserCountry/API.php b/plugins/UserCountry/API.php
index 4c146e879b6ae73ee656f881fbb0d4ac871a9c07..3724ee2d8d4f5e53e2d3971de2981e9419a128f2 100644
--- a/plugins/UserCountry/API.php
+++ b/plugins/UserCountry/API.php
@@ -49,7 +49,7 @@ class Piwik_UserCountry_API
     {
         $dataTable = $this->getDataTable(Piwik_UserCountry_Archiver::COUNTRY_RECORD_NAME, $idSite, $period, $date, $segment);
 
-        $getContinent = array('Piwik_Common', 'getContinent');
+        $getContinent = array('Piwik\Common', 'getContinent');
         $dataTable->filter('GroupBy', array('label', $getContinent));
 
         $dataTable->filter('ColumnCallbackReplace', array('label', 'Piwik_ContinentTranslate'));
diff --git a/plugins/UsersManager/API.php b/plugins/UsersManager/API.php
index 3a804c70f0ff3b4394ff53e7da64ad88953706a5..17a2c84c472bd4340b14eb3bff9e23b60b90f757 100644
--- a/plugins/UsersManager/API.php
+++ b/plugins/UsersManager/API.php
@@ -11,6 +11,7 @@
 use Piwik\Config;
 use Piwik\Piwik;
 use Piwik\Common;
+use Piwik\Access;
 
 /**
  * The UsersManager API lets you Manage Users and their permissions to access specific websites.
@@ -388,7 +389,7 @@ class Piwik_UsersManager_API
         );
 
         // we reload the access list which doesn't yet take in consideration this new user
-        Piwik_Access::getInstance()->reloadAccess();
+        Access::getInstance()->reloadAccess();
         Piwik_Tracker_Cache::deleteTrackerCache();
 
         Piwik_PostEvent('UsersManager.addUser', array($userLogin));
@@ -567,7 +568,7 @@ class Piwik_UsersManager_API
         }
 
         // we reload the access list which doesn't yet take in consideration this new user access
-        Piwik_Access::getInstance()->reloadAccess();
+        Access::getInstance()->reloadAccess();
         Piwik_Tracker_Cache::deleteTrackerCache();
     }
 
@@ -613,7 +614,7 @@ class Piwik_UsersManager_API
 
     private function checkAccessType($access)
     {
-        $accessList = Piwik_Access::getListAccess();
+        $accessList = Access::getListAccess();
 
         // do not allow to set the superUser access
         unset($accessList[array_search("superuser", $accessList)]);
diff --git a/tests/LocalTracker.php b/tests/LocalTracker.php
index 7cdbab883eabb1c9d3341d41fdd03989f7283e5f..e7c64ad96c4d48528e66fc7875159d7b958718f3 100755
--- a/tests/LocalTracker.php
+++ b/tests/LocalTracker.php
@@ -1,6 +1,6 @@
 <?php
 
-use Piwik\Core\Config;
+use Piwik\Config;
 
 $GLOBALS['PIWIK_TRACKER_DEBUG'] = false;
 $GLOBALS['PIWIK_TRACKER_DEBUG_FORCE_SCHEDULED_TASKS'] = false;
diff --git a/tests/PHPUnit/BaseFixture.php b/tests/PHPUnit/BaseFixture.php
index 88f90a471ba5a57ffcfd69bdc23623ffb0cf948f..82b1b956ccf6738dbb31eb83e12ffea722c9f62c 100644
--- a/tests/PHPUnit/BaseFixture.php
+++ b/tests/PHPUnit/BaseFixture.php
@@ -5,8 +5,9 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Config;
-use Piwik\Core\Common;
+use Piwik\Config;
+use Piwik\Common;
+use Piwik\Access;
 
 /**
  * Base type for all integration test fixtures. Integration test fixtures
@@ -200,7 +201,7 @@ abstract class Test_Piwik_BaseFixture extends PHPUnit_Framework_Assert
         // fake access is needed so API methods can call Piwik::getCurrentUserLogin(), e.g: 'PDFReports.addReport'
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         // retrieve available reports
         $availableReportMetadata = Piwik_PDFReports_API::getReportMetadata($idSite, Piwik_PDFReports::EMAIL_TYPE);
diff --git a/tests/PHPUnit/BenchmarkTestCase.php b/tests/PHPUnit/BenchmarkTestCase.php
index 3f753e401be1f3450b41dbcca1b3f5d39348424a..d89fd58846a2ec0ffcb245644e933f93dd9c9fad 100755
--- a/tests/PHPUnit/BenchmarkTestCase.php
+++ b/tests/PHPUnit/BenchmarkTestCase.php
@@ -5,8 +5,8 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Config;
-use Piwik\Core\Common;
+use Piwik\Config;
+use Piwik\Common;
 
 require_once PIWIK_INCLUDE_PATH . '/tests/PHPUnit/IntegrationTestCase.php';
 require_once PIWIK_INCLUDE_PATH . '/tests/LocalTracker.php';
diff --git a/tests/PHPUnit/Benchmarks/Fixtures/SqlDump.php b/tests/PHPUnit/Benchmarks/Fixtures/SqlDump.php
index 2f6a75143ba4cc93b981993d2b7557b7815f3605..701a6066f833e4a343df240c63dca69f6f94b22e 100755
--- a/tests/PHPUnit/Benchmarks/Fixtures/SqlDump.php
+++ b/tests/PHPUnit/Benchmarks/Fixtures/SqlDump.php
@@ -5,9 +5,9 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Config;
-use Piwik\Core\Piwik;
-use Piwik\Core\Common;
+use Piwik\Config;
+use Piwik\Piwik;
+use Piwik\Common;
 
 /**
  * Reusable fixture. Loads a ~1GB SQL dump into the DB.
diff --git a/tests/PHPUnit/Core/AccessTest.php b/tests/PHPUnit/Core/AccessTest.php
index 09637df503b934e123e42d1f0b0cb6172fbfdf06..f6d8f6e103c125ee372367773608c012bfdf59bb 100644
--- a/tests/PHPUnit/Core/AccessTest.php
+++ b/tests/PHPUnit/Core/AccessTest.php
@@ -5,6 +5,9 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+use Piwik\Access;
+use Piwik\AuthResult;
+
 class AccessTest extends DatabaseTestCase
 {
     /**
@@ -13,7 +16,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testGetListAccess()
     {
-        $accessList = Piwik_Access::getListAccess();
+        $accessList = Access::getListAccess();
         $shouldBe = array('noaccess', 'view', 'admin', 'superuser');
         $this->assertEquals($shouldBe, $accessList);
     }
@@ -24,7 +27,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testGetTokenAuthWithEmptyAccess()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $this->assertNull($access->getTokenAuth());
     }
 
@@ -34,7 +37,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testGetLoginWithEmptyAccess()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $this->assertNull($access->getLogin());
     }
 
@@ -44,7 +47,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testIsSuperUserWithEmptyAccess()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $this->assertFalse($access->isSuperUser());
     }
 
@@ -54,7 +57,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testIsSuperUserWithSuperUserAccess()
     {
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(true);
         $this->assertTrue($access->isSuperUser());
     }
@@ -65,7 +68,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testIsSuperUserWithNoSuperUserAccess()
     {
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(false);
         $this->assertFalse($access->isSuperUser());
     }
@@ -76,7 +79,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testGetSitesIdWithAtLeastViewAccessWithEmptyAccess()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $this->assertEmpty($access->getSitesIdWithAtLeastViewAccess());
     }
 
@@ -86,7 +89,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testGetSitesIdWithAdminAccessWithEmptyAccess()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $this->assertEmpty($access->getSitesIdWithAdminAccess());
     }
 
@@ -96,18 +99,18 @@ class AccessTest extends DatabaseTestCase
      */
     public function testGetSitesIdWithViewAccessWithEmptyAccess()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $this->assertEmpty($access->getSitesIdWithViewAccess());
     }
 
     /**
      * @group Core
      * @group Access
-     * @expectedException Piwik_Access_NoAccessException
+     * @expectedException Piwik\NoAccessException
      */
     public function testCheckUserIsSuperUserWithEmptyAccess()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $access->checkUserIsSuperUser();
     }
 
@@ -117,7 +120,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testCheckUserIsSuperUserWithSuperUserAccess()
     {
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(true);
         $access->checkUserIsSuperUser();
     }
@@ -125,11 +128,11 @@ class AccessTest extends DatabaseTestCase
     /**
      * @group Core
      * @group Access
-     * @expectedException Piwik_Access_NoAccessException
+     * @expectedException Piwik\NoAccessException
      */
     public function testCheckUserHasSomeAdminAccessWithEmptyAccess()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $access->checkUserHasSomeAdminAccess();
     }
 
@@ -139,7 +142,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testCheckUserHasSomeAdminAccessWithSuperUserAccess()
     {
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(true);
         $access->checkUserHasSomeAdminAccess();
     }
@@ -151,13 +154,13 @@ class AccessTest extends DatabaseTestCase
     public function testCheckUserHasSomeAdminAccessWithSomeAccess()
     {
         $mock = $this->getMock(
-            'Piwik_Access',
+            'Piwik\Access',
             array('getSitesIdWithAdminAccess')
         );
 
         $mock->expects($this->once())
-            ->method('getSitesIdWithAdminAccess')
-            ->will($this->returnValue(array(2, 9)));
+             ->method('getSitesIdWithAdminAccess')
+             ->will($this->returnValue(array(2, 9)));
 
         $mock->checkUserHasSomeAdminAccess();
     }
@@ -165,11 +168,11 @@ class AccessTest extends DatabaseTestCase
     /**
      * @group Core
      * @group Access
-     * @expectedException Piwik_Access_NoAccessException
+     * @expectedException Piwik\NoAccessException
      */
     public function testCheckUserHasSomeViewAccessWithEmptyAccess()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $access->checkUserHasSomeViewAccess();
     }
 
@@ -179,7 +182,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testCheckUserHasSomeViewAccessWithSuperUserAccess()
     {
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(true);
         $access->checkUserHasSomeViewAccess();
     }
@@ -191,7 +194,7 @@ class AccessTest extends DatabaseTestCase
     public function testCheckUserHasSomeViewAccessWithSomeAccess()
     {
         $mock = $this->getMock(
-            'Piwik_Access',
+            'Piwik\Access',
             array('getSitesIdWithAtLeastViewAccess')
         );
 
@@ -205,11 +208,11 @@ class AccessTest extends DatabaseTestCase
     /**
      * @group Core
      * @group Access
-     * @expectedException Piwik_Access_NoAccessException
+     * @expectedException Piwik\NoAccessException
      */
     public function testCheckUserHasViewAccessWithEmptyAccessNoSiteIdsGiven()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $access->checkUserHasViewAccess(array());
     }
 
@@ -219,7 +222,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testCheckUserHasViewAccessWithSuperUserAccess()
     {
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(true);
         $access->checkUserHasViewAccess(array());
     }
@@ -231,7 +234,7 @@ class AccessTest extends DatabaseTestCase
     public function testCheckUserHasViewAccessWithSomeAccessSuccessIdSitesAsString()
     {
         $mock = $this->getMock(
-            'Piwik_Access',
+            'Piwik\Access',
             array('getSitesIdWithAtLeastViewAccess')
         );
 
@@ -249,7 +252,7 @@ class AccessTest extends DatabaseTestCase
     public function testCheckUserHasViewAccessWithSomeAccessSuccessAllSites()
     {
         $mock = $this->getMock(
-            'Piwik_Access',
+            'Piwik\Access',
             array('getSitesIdWithAtLeastViewAccess')
         );
 
@@ -263,12 +266,12 @@ class AccessTest extends DatabaseTestCase
     /**
      * @group Core
      * @group Access
-     * @expectedException Piwik_Access_NoAccessException
+     * @expectedException Piwik\NoAccessException
      */
     public function testCheckUserHasViewAccessWithSomeAccessFailure()
     {
         $mock = $this->getMock(
-            'Piwik_Access',
+            'Piwik\Access',
             array('getSitesIdWithAtLeastViewAccess')
         );
 
@@ -285,7 +288,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testCheckUserHasAdminAccessWithSuperUserAccess()
     {
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(true);
         $access->checkUserHasAdminAccess(array());
     }
@@ -293,11 +296,11 @@ class AccessTest extends DatabaseTestCase
     /**
      * @group Core
      * @group Access
-     * @expectedException Piwik_Access_NoAccessException
+     * @expectedException Piwik\NoAccessException
      */
     public function testCheckUserHasAdminAccessWithEmptyAccessNoSiteIdsGiven()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $access->checkUserHasViewAccess(array());
     }
 
@@ -308,7 +311,7 @@ class AccessTest extends DatabaseTestCase
     public function testCheckUserHasAdminAccessWithSomeAccessSuccessIdSitesAsString()
     {
         $mock = $this->getMock(
-            'Piwik_Access',
+            'Piwik\Access',
             array('getSitesIdWithAdminAccess')
         );
 
@@ -326,7 +329,7 @@ class AccessTest extends DatabaseTestCase
     public function testCheckUserHasAdminAccessWithSomeAccessSuccessAllSites()
     {
         $mock = $this->getMock(
-            'Piwik_Access',
+            'Piwik\Access',
             array('getSitesIdWithAdminAccess', 'getSitesIdWithAtLeastViewAccess')
         );
 
@@ -344,12 +347,12 @@ class AccessTest extends DatabaseTestCase
     /**
      * @group Core
      * @group Access
-     * @expectedException Piwik_Access_NoAccessException
+     * @expectedException Piwik\NoAccessException
      */
     public function testCheckUserHasAdminAccessWithSomeAccessFailure()
     {
         $mock = $this->getMock(
-            'Piwik_Access',
+            'Piwik\Access',
             array('getSitesIdWithAdminAccess')
         );
 
@@ -366,7 +369,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testReloadAccessWithEmptyAuth()
     {
-        $access = new Piwik_Access();
+        $access = new Access();
         $this->assertFalse($access->reloadAccess(null));
     }
 
@@ -376,7 +379,7 @@ class AccessTest extends DatabaseTestCase
      */
     public function testReloadAccessWithEmptyAuthSuperUser()
     {
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(true);
         $this->assertTrue($access->reloadAccess(null));
     }
@@ -390,9 +393,9 @@ class AccessTest extends DatabaseTestCase
         $mock = $this->getMock('Piwik_Login_Auth', array('authenticate'));
         $mock->expects($this->once())
             ->method('authenticate')
-            ->will($this->returnValue(new Piwik_Auth_Result(Piwik_Auth_Result::SUCCESS, 'login', 'token')));
+            ->will($this->returnValue(new AuthResult(AuthResult::SUCCESS, 'login', 'token')));
 
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $this->assertTrue($access->reloadAccess($mock));
         $this->assertFalse($access->isSuperUser());
     }
@@ -406,9 +409,9 @@ class AccessTest extends DatabaseTestCase
         $mock = $this->getMock('Piwik_Login_Auth', array('authenticate'));
         $mock->expects($this->once())
             ->method('authenticate')
-            ->will($this->returnValue(new Piwik_Auth_Result(Piwik_Auth_Result::SUCCESS_SUPERUSER_AUTH_CODE, 'superuser', 'superusertoken')));
+            ->will($this->returnValue(new AuthResult(AuthResult::SUCCESS_SUPERUSER_AUTH_CODE, 'superuser', 'superusertoken')));
 
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $this->assertTrue($access->reloadAccess($mock));
         $this->assertTrue($access->isSuperUser());
     }
@@ -422,9 +425,9 @@ class AccessTest extends DatabaseTestCase
         $mock = $this->getMock('Piwik_Login_Auth', array('authenticate'));
         $mock->expects($this->once())
             ->method('authenticate')
-            ->will($this->returnValue(new Piwik_Auth_Result(Piwik_Auth_Result::FAILURE_CREDENTIAL_INVALID, null, null)));
+            ->will($this->returnValue(new AuthResult(AuthResult::FAILURE_CREDENTIAL_INVALID, null, null)));
 
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $this->assertFalse($access->reloadAccess($mock));
     }
 
diff --git a/tests/PHPUnit/Core/ArchiveProcessingTest.php b/tests/PHPUnit/Core/ArchiveProcessingTest.php
index 8a73c111137d3b05dea095e133da3ebe4e1154c6..a190983ce9678d5a3e3c2462f13a52d8bbed7712 100644
--- a/tests/PHPUnit/Core/ArchiveProcessingTest.php
+++ b/tests/PHPUnit/Core/ArchiveProcessingTest.php
@@ -1,7 +1,8 @@
 <?php
-use Piwik\Core\Config;
-use Piwik\Core\Piwik;
-use Piwik\Core\Common;
+use Piwik\Config;
+use Piwik\Piwik;
+use Piwik\Common;
+use Piwik\Access;
 
 /**
  * Piwik - Open source web analytics
@@ -18,7 +19,7 @@ class ArchiveProcessingTest extends DatabaseTestCase
         // setup the access layer
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
     }
 
     /**
diff --git a/tests/PHPUnit/Core/CommonTest.php b/tests/PHPUnit/Core/CommonTest.php
index 0163ff548a14b4ace9fff0f4390ba5a51049b263..b0f69a69c40712a7ee184d980267b555e0152a29 100644
--- a/tests/PHPUnit/Core/CommonTest.php
+++ b/tests/PHPUnit/Core/CommonTest.php
@@ -1,5 +1,5 @@
 <?php
-use Piwik\Core\Common;
+use Piwik\Common;
 
 /**
  * Piwik - Open source web analytics
diff --git a/tests/PHPUnit/Core/ConfigTest.php b/tests/PHPUnit/Core/ConfigTest.php
index df6ef685a6a37de618d6e43c33c05ffe8ae51303..0922c7a20ed3ad1f1c10bf6b4aaee1135e0356d2 100644
--- a/tests/PHPUnit/Core/ConfigTest.php
+++ b/tests/PHPUnit/Core/ConfigTest.php
@@ -1,5 +1,5 @@
 <?php
-use Piwik\Core\Config;
+use Piwik\Config;
 
 /**
  * Piwik - Open source web analytics
diff --git a/tests/PHPUnit/Core/DataTable/ArrayTest.php b/tests/PHPUnit/Core/DataTable/ArrayTest.php
index 9ceaed5caa0ac24600ea9c37b0c561c1e70017ec..2c1cc4e069df59d13e5e303fc912b2ecace85d09 100755
--- a/tests/PHPUnit/Core/DataTable/ArrayTest.php
+++ b/tests/PHPUnit/Core/DataTable/ArrayTest.php
@@ -1,5 +1,5 @@
 <?php
-use Piwik\Core\Config;
+use Piwik\Config;
 
 class Test_Piwik_DataTable_Array extends PHPUnit_Framework_TestCase
 {
diff --git a/tests/PHPUnit/Core/DataTableTest.php b/tests/PHPUnit/Core/DataTableTest.php
index 9249d7ea72d80d45e9f6b160ab246d92522c574c..2a7fdc1548bac15ae77ac2ffc6b102fb933df34e 100644
--- a/tests/PHPUnit/Core/DataTableTest.php
+++ b/tests/PHPUnit/Core/DataTableTest.php
@@ -1,4 +1,7 @@
 <?php
+
+use Piwik\Common;
+
 /**
  * Piwik - Open source web analytics
  *
@@ -748,7 +751,7 @@ class DataTableTest extends PHPUnit_Framework_TestCase
         // when the expanded parameter is false.
         $rowBeingDestructed->c[Piwik_DataTable_Row::DATATABLE_ASSOCIATED] = $mockedDataTable->getId();
 
-        destroy($rowBeingDestructed);
+        Common::destroy($rowBeingDestructed);
     }
 
     /**
@@ -778,7 +781,7 @@ class DataTableTest extends PHPUnit_Framework_TestCase
         $rowBeingDestructed = new Piwik_DataTable_Row();
         $rowBeingDestructed->setSubtable($mockedDataTable);
 
-        destroy($rowBeingDestructed);
+        Common::destroy($rowBeingDestructed);
     }
 
     protected function _getDataTable1ForTest()
diff --git a/tests/PHPUnit/Core/DateTest.php b/tests/PHPUnit/Core/DateTest.php
index 1b031418654056e21fbdba0f47316ff649bdf5e5..4b80aa3abd3713995ef89a47b0adfd67591824c5 100644
--- a/tests/PHPUnit/Core/DateTest.php
+++ b/tests/PHPUnit/Core/DateTest.php
@@ -1,5 +1,5 @@
 <?php
-use Piwik\Core\Piwik;
+use Piwik\Piwik;
 
 /**
  * Piwik - Open source web analytics
diff --git a/tests/PHPUnit/Core/IPTest.php b/tests/PHPUnit/Core/IPTest.php
index 375f441fa391855dec0c0b4b82f93f58ea55ebab..49a4741ca4640ca11829be07fc364b89b370deec 100644
--- a/tests/PHPUnit/Core/IPTest.php
+++ b/tests/PHPUnit/Core/IPTest.php
@@ -1,6 +1,6 @@
 <?php
-use Piwik\Core\Config;
-use Piwik\Core\Common;
+use Piwik\Config;
+use Piwik\Common;
 
 /**
  * Piwik - Open source web analytics
diff --git a/tests/PHPUnit/Core/NonceTest.php b/tests/PHPUnit/Core/NonceTest.php
index 25ecd3579c135d439c90d3ddaf9df567568d04be..a776cee77e02e9ea49900f706bb10c9cca081512 100644
--- a/tests/PHPUnit/Core/NonceTest.php
+++ b/tests/PHPUnit/Core/NonceTest.php
@@ -1,5 +1,5 @@
 <?php
-use Piwik\Core\Config;
+use Piwik\Config;
 
 /**
  * Piwik - Open source web analytics
diff --git a/tests/PHPUnit/Core/OptionTest.php b/tests/PHPUnit/Core/OptionTest.php
index ea6bc19ef985abbb404163e239e9fdf5c663fec5..83625cfbae281d22d25a570a3f87dcf329a25549 100644
--- a/tests/PHPUnit/Core/OptionTest.php
+++ b/tests/PHPUnit/Core/OptionTest.php
@@ -5,7 +5,7 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Common;
+use Piwik\Common;
 
 require_once "Option.php";
 
diff --git a/tests/PHPUnit/Core/PiwikTest.php b/tests/PHPUnit/Core/PiwikTest.php
index 5ed4a51f243f313cffbb138096eaff775556e80e..e1697dde83990117bb34bcd7c4e84d1d9f913871 100644
--- a/tests/PHPUnit/Core/PiwikTest.php
+++ b/tests/PHPUnit/Core/PiwikTest.php
@@ -1,5 +1,6 @@
 <?php
-use Piwik\Core\Piwik;
+use Piwik\Piwik;
+use Piwik\Access;
 
 /**
  * Piwik - Open source web analytics
@@ -212,7 +213,7 @@ class PiwikTest extends DatabaseTestCase
     {
         Piwik_Translate::getInstance()->loadEnglishTranslation();
 
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(true);
 
         $idsite = Piwik_SitesManager_API::getInstance()->addSite("test", "http://test");
diff --git a/tests/PHPUnit/Core/PluginsFunctions/WidgetsListTest.php b/tests/PHPUnit/Core/PluginsFunctions/WidgetsListTest.php
index b3f2add7c12c5d8824665f05bc7485126dcf87fb..5bb375bd695f3638fba0035f9cfe8dd6758fbb99 100644
--- a/tests/PHPUnit/Core/PluginsFunctions/WidgetsListTest.php
+++ b/tests/PHPUnit/Core/PluginsFunctions/WidgetsListTest.php
@@ -6,6 +6,8 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+use Piwik\Access;
+
 class WidgetsListTest extends DatabaseTestCase
 {
     /**
@@ -18,7 +20,7 @@ class WidgetsListTest extends DatabaseTestCase
         // setup the access layer
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         Test_Piwik_BaseFixture::createWebsite('2009-01-04 00:11:42');
 
@@ -64,7 +66,7 @@ class WidgetsListTest extends DatabaseTestCase
         // setup the access layer
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         Test_Piwik_BaseFixture::createWebsite('2009-01-04 00:11:42');
         Piwik_Goals_API::getInstance()->addGoal(1, 'Goal 1 - Thank you', 'title', 'Thank you', 'contains', $caseSensitive = false, $revenue = 10, $allowMultipleConversions = 1);
@@ -101,7 +103,7 @@ class WidgetsListTest extends DatabaseTestCase
         // setup the access layer
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         Test_Piwik_BaseFixture::createWebsite('2009-01-04 00:11:42', true);
         Piwik_Goals_API::getInstance()->addGoal(1, 'Goal 1 - Thank you', 'title', 'Thank you', 'contains', $caseSensitive = false, $revenue = 10, $allowMultipleConversions = 1);
diff --git a/tests/PHPUnit/Core/ReleaseCheckListTest.php b/tests/PHPUnit/Core/ReleaseCheckListTest.php
index d58cbfaea592a457827657c2ae136a390e1f5150..116ddae02cdcbc08e025fc197509925a64f0b80c 100644
--- a/tests/PHPUnit/Core/ReleaseCheckListTest.php
+++ b/tests/PHPUnit/Core/ReleaseCheckListTest.php
@@ -1,6 +1,6 @@
 <?php
-use Piwik\Core\Piwik;
-use Piwik\Core\Common;
+use Piwik\Piwik;
+use Piwik\Common;
 
 /**
  * Piwik - Open source web analytics
diff --git a/tests/PHPUnit/Core/SegmentTest.php b/tests/PHPUnit/Core/SegmentTest.php
index e86a0affdce75b70124e86623f9cf08a653440d0..563bb906af3979ae0990995acd2fa3d1124fc130 100644
--- a/tests/PHPUnit/Core/SegmentTest.php
+++ b/tests/PHPUnit/Core/SegmentTest.php
@@ -1,5 +1,6 @@
 <?php
-use Piwik\Core\Common;
+use Piwik\Common;
+use Piwik\Access;
 
 /**
  * Piwik - Open source web analytics
@@ -16,7 +17,7 @@ class SegmentTest extends PHPUnit_Framework_TestCase
         // setup the access layer (required in Segment contrustor testing if anonymous is allowed to use segments)
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         // Load and install plugins
         IntegrationTestCase::loadAllPlugins();
diff --git a/tests/PHPUnit/Core/ServeStaticFileTest.php b/tests/PHPUnit/Core/ServeStaticFileTest.php
index 47747527f75cc9beb2b60f73852ee5fc0cae7b82..116edab40a0a0ee5b12de3c0418f791d61342151 100644
--- a/tests/PHPUnit/Core/ServeStaticFileTest.php
+++ b/tests/PHPUnit/Core/ServeStaticFileTest.php
@@ -12,8 +12,8 @@
  */
 
 // This is Piwik logo, the static file used in this test suit
-use Piwik\Core\Piwik;
-use Piwik\Core\Common;
+use Piwik\Piwik;
+use Piwik\Common;
 
 define("TEST_FILE_LOCATION", realpath(dirname(__FILE__) . "/../../resources/lipsum.txt"));
 define("TEST_FILE_CONTENT_TYPE", "text/plain");
diff --git a/tests/PHPUnit/Core/Tracker/ActionTest.php b/tests/PHPUnit/Core/Tracker/ActionTest.php
index 83899537eacb2cc7a6eda75054d92fd7103b7708..22163644ebeef193b74ad5fd3ca8c6d25e4175ad 100644
--- a/tests/PHPUnit/Core/Tracker/ActionTest.php
+++ b/tests/PHPUnit/Core/Tracker/ActionTest.php
@@ -1,5 +1,6 @@
 <?php
-use Piwik\Core\Config;
+use Piwik\Config;
+use Piwik\Access;
 
 /**
  * Piwik - Open source web analytics
@@ -26,7 +27,7 @@ class Tracker_ActionTest extends DatabaseTestCase
     {
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
     }
 
     public function getTestUrls()
diff --git a/tests/PHPUnit/Core/Tracker/VisitTest.php b/tests/PHPUnit/Core/Tracker/VisitTest.php
index 7441bb6fe4a5c3c48f84ddfbca291edd54e8c0c3..73514c7953c77688f478d122204144ccf7c814f2 100644
--- a/tests/PHPUnit/Core/Tracker/VisitTest.php
+++ b/tests/PHPUnit/Core/Tracker/VisitTest.php
@@ -5,6 +5,8 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+use Piwik\Access;
+
 class Tracker_VisitTest extends DatabaseTestCase
 {
     public function setUp()
@@ -14,7 +16,7 @@ class Tracker_VisitTest extends DatabaseTestCase
         // setup the access layer
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         Piwik_PluginsManager::getInstance()->loadPlugins(array('SitesManager'));
     }
diff --git a/tests/PHPUnit/Core/TranslationWriterTest.php b/tests/PHPUnit/Core/TranslationWriterTest.php
index 6b36c76dbf106c8396de55e4138bec728d1fe285..c508bc2728f888fd171dbd425bf057a58e51c964 100644
--- a/tests/PHPUnit/Core/TranslationWriterTest.php
+++ b/tests/PHPUnit/Core/TranslationWriterTest.php
@@ -1,5 +1,5 @@
 <?php
-use Piwik\Core\Common;
+use Piwik\Common;
 
 /**
  * Piwik - Open source web analytics
diff --git a/tests/PHPUnit/Core/UrlTest.php b/tests/PHPUnit/Core/UrlTest.php
index 8bb62b9b70f0d8ea866e8135168d7f09bb1e9c1e..1866d74128b8f8676ca99299cd0bb5debdd37a1d 100644
--- a/tests/PHPUnit/Core/UrlTest.php
+++ b/tests/PHPUnit/Core/UrlTest.php
@@ -1,5 +1,5 @@
 <?php
-use Piwik\Core\Config;
+use Piwik\Config;
 
 /**
  * Piwik - Open source web analytics
diff --git a/tests/PHPUnit/DatabaseTestCase.php b/tests/PHPUnit/DatabaseTestCase.php
index e432767b5b4dfaa71b9a001eec9f620febf10395..edce58a99bd6a57b6e37d63b2ecf32e9611378f2 100644
--- a/tests/PHPUnit/DatabaseTestCase.php
+++ b/tests/PHPUnit/DatabaseTestCase.php
@@ -5,8 +5,8 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Config;
-use Piwik\Core\Piwik;
+use Piwik\Config;
+use Piwik\Piwik;
 
 /**
  * Tests extending DatabaseTestCase are much slower to run: the setUp will
diff --git a/tests/PHPUnit/Fixtures/ManySitesImportedLogs.php b/tests/PHPUnit/Fixtures/ManySitesImportedLogs.php
index a0a474af1d568b8349b5b394390a51fff3a833bb..8cd88282d56e7016bdb61ecca4662fb10a6fe8e0 100644
--- a/tests/PHPUnit/Fixtures/ManySitesImportedLogs.php
+++ b/tests/PHPUnit/Fixtures/ManySitesImportedLogs.php
@@ -5,6 +5,7 @@
  * @link    http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+use Piwik\Access;
 
 /**
  * Imports visits from several log files using the python log importer.
@@ -191,7 +192,7 @@ class Test_Piwik_Fixture_ManySitesImportedLogs extends Test_Piwik_BaseFixture
 }
 
 // needed by tests that use stored segments w/ the proxy index.php
-class Test_Piwik_Access_OverrideLogin extends Piwik_Access
+class Test_Access_OverrideLogin extends Access
 {
     public function getLogin()
     {
diff --git a/tests/PHPUnit/Fixtures/ManySitesImportedLogsWithXssAttempts.php b/tests/PHPUnit/Fixtures/ManySitesImportedLogsWithXssAttempts.php
index dfb515b7130bc8cc8c6d3b7711034c6ea9eaecaa..3f9a92e0214e3a03c340c0cb27d69e2ef402b777 100644
--- a/tests/PHPUnit/Fixtures/ManySitesImportedLogsWithXssAttempts.php
+++ b/tests/PHPUnit/Fixtures/ManySitesImportedLogsWithXssAttempts.php
@@ -5,7 +5,7 @@
  * @link    http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Common;
+use Piwik\Common;
 
 require_once PIWIK_INCLUDE_PATH . '/tests/PHPUnit/Fixtures/ManySitesImportedLogs.php';
 
diff --git a/tests/PHPUnit/Fixtures/TwoSitesWithAnnotations.php b/tests/PHPUnit/Fixtures/TwoSitesWithAnnotations.php
index 7344f79f4a3fd445c761f30a52117429231849be..2c986b337c504b7c8c7b5aa1ec40face89c010be 100644
--- a/tests/PHPUnit/Fixtures/TwoSitesWithAnnotations.php
+++ b/tests/PHPUnit/Fixtures/TwoSitesWithAnnotations.php
@@ -5,6 +5,7 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+use Piwik\Access;
 
 /**
  * A fixture that adds two websites and annotations for each website.
@@ -31,7 +32,7 @@ class Test_Piwik_Fixture_TwoSitesWithAnnotations extends Test_Piwik_BaseFixture
         // create fake access for fake username
         $access = new FakeAccess();
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($access);
+        Access::setSingletonInstance($access);
 
         // add two annotations per week for three months, starring every third annotation
         // first month in 2011, second two in 2012
diff --git a/tests/PHPUnit/Integration/AnnotationsTest.php b/tests/PHPUnit/Integration/AnnotationsTest.php
index 1e9995eeb5605d498b13779b88d3e39b723f9f1b..d37d18a3597054877de5d54f1c5e89314d57bb0b 100755
--- a/tests/PHPUnit/Integration/AnnotationsTest.php
+++ b/tests/PHPUnit/Integration/AnnotationsTest.php
@@ -6,6 +6,8 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+use Piwik\Access;
+
 class AnnotationsTest extends IntegrationTestCase
 {
     public static $fixture = null;
@@ -306,7 +308,7 @@ class AnnotationsTest extends IntegrationTestCase
         FakeAccess::$superUser = false;
         FakeAccess::$idSitesAdmin = $hasAdminAccess ? array(self::$fixture->idSite1) : array();
         FakeAccess::$idSitesView = $hasViewAccess ? array(self::$fixture->idSite1) : array();
-        Piwik_Access::setSingletonInstance($access);
+        Access::setSingletonInstance($access);
 
         if ($checkException) {
             try {
diff --git a/tests/PHPUnit/Integration/ArchiveCronTest.php b/tests/PHPUnit/Integration/ArchiveCronTest.php
index ad0bbe3aaec97b41e7b2cdb6c86be0d77472511e..eb49013b5dddd136222f2d0eccca1db91667f6de 100644
--- a/tests/PHPUnit/Integration/ArchiveCronTest.php
+++ b/tests/PHPUnit/Integration/ArchiveCronTest.php
@@ -5,7 +5,8 @@
  * @link    http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Piwik;
+use Piwik\Piwik;
+use Piwik\Access;
 
 /**
  * Tests the archive.php cron script.
@@ -16,7 +17,7 @@ class Test_Piwik_Integration_ArchiveCronTest extends IntegrationTestCase
     
     public static function createAccessInstance()
     {
-        Piwik_Access::setSingletonInstance($access = new Test_Piwik_Access_OverrideLogin());
+        Access::setSingletonInstance($access = new Test_Access_OverrideLogin());
         Piwik_PostEvent('FrontController.initAuthenticationObject');
     }
     
diff --git a/tests/PHPUnit/Integration/BlobReportLimitingTest.php b/tests/PHPUnit/Integration/BlobReportLimitingTest.php
index 2f0389774a9b7fc720734678d61054ec1363c370..367bfd21bfd55e528eee9dff6b1d7a7a8aa52518 100755
--- a/tests/PHPUnit/Integration/BlobReportLimitingTest.php
+++ b/tests/PHPUnit/Integration/BlobReportLimitingTest.php
@@ -6,7 +6,7 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
-use Piwik\Core\Config;
+use Piwik\Config;
 
 require_once PIWIK_INCLUDE_PATH . '/tests/PHPUnit/MockLocationProvider.php';
 
diff --git a/tests/PHPUnit/Integration/EcommerceOrderWithItemsTest.php b/tests/PHPUnit/Integration/EcommerceOrderWithItemsTest.php
index 9ff5d73abae4ae7daf0af7f986408c723b04ca1e..89eaf8b7f4b4bb74b2e828bdcf11e1f6ea32b89c 100755
--- a/tests/PHPUnit/Integration/EcommerceOrderWithItemsTest.php
+++ b/tests/PHPUnit/Integration/EcommerceOrderWithItemsTest.php
@@ -5,7 +5,7 @@
  * @link    http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Piwik;
+use Piwik\Piwik;
 
 /**
  * Tests API methods after ecommerce orders are tracked.
diff --git a/tests/PHPUnit/Integration/ImportLogsTest.php b/tests/PHPUnit/Integration/ImportLogsTest.php
index b8a52369b62370373ee3c66087b40f4a8baa572d..795cece9dfa22c628d73860c47e5d4127648a4ec 100755
--- a/tests/PHPUnit/Integration/ImportLogsTest.php
+++ b/tests/PHPUnit/Integration/ImportLogsTest.php
@@ -5,6 +5,7 @@
  * @link    http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+use Piwik\Access;
 
 /**
  * Tests the log importer.
@@ -54,7 +55,7 @@ class Test_Piwik_Integration_ImportLogs extends IntegrationTestCase
         self::$fixture->logVisitsWithDynamicResolver();
 
         // reload access so new sites are viewable
-        Piwik_Access::getInstance()->setSuperUser(true);
+        Access::getInstance()->setSuperUser(true);
 
         // make sure sites aren't created twice
         $piwikDotNet = Piwik_SitesManager_API::getInstance()->getSitesIdFromSiteUrl('http://piwik.net');
diff --git a/tests/PHPUnit/Integration/OneVisitorOneWebsite_SeveralDaysDateRange_ArchivingTestsTest.php b/tests/PHPUnit/Integration/OneVisitorOneWebsite_SeveralDaysDateRange_ArchivingTestsTest.php
index b8a45204562b5c12b86547e50dd53572d51125bb..78efdcaf577bb9fbdbac9e144a18e8c4f3405068 100755
--- a/tests/PHPUnit/Integration/OneVisitorOneWebsite_SeveralDaysDateRange_ArchivingTestsTest.php
+++ b/tests/PHPUnit/Integration/OneVisitorOneWebsite_SeveralDaysDateRange_ArchivingTestsTest.php
@@ -5,8 +5,8 @@
  * @link    http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Piwik;
-use Piwik\Core\Common;
+use Piwik\Piwik;
+use Piwik\Common;
 
 /**
  * Tests some API using range periods & makes sure the correct amount of blob/numeric
diff --git a/tests/PHPUnit/Integration/TwoVisitsWithCustomVariables_SegmentMatchVisitorTypeTest.php b/tests/PHPUnit/Integration/TwoVisitsWithCustomVariables_SegmentMatchVisitorTypeTest.php
index fa43ef7cea106e0ade0d154127063ec1ee06aa8d..a36b5ec8095ab5ce14334cc237bb84e0d9e1c203 100755
--- a/tests/PHPUnit/Integration/TwoVisitsWithCustomVariables_SegmentMatchVisitorTypeTest.php
+++ b/tests/PHPUnit/Integration/TwoVisitsWithCustomVariables_SegmentMatchVisitorTypeTest.php
@@ -5,7 +5,7 @@
  * @link    http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Common;
+use Piwik\Common;
 
 /**
  * Tests use of custom variable segments.
diff --git a/tests/PHPUnit/Integration/UrlNormalizationTest.php b/tests/PHPUnit/Integration/UrlNormalizationTest.php
index cf0237bcc368cec31c94ccf11e28b6bc0a4fac58..32fc1fffbdbf3290548391282d27089b30048629 100644
--- a/tests/PHPUnit/Integration/UrlNormalizationTest.php
+++ b/tests/PHPUnit/Integration/UrlNormalizationTest.php
@@ -1,5 +1,5 @@
 <?php
-use Piwik\Core\Common;
+use Piwik\Common;
 
 /**
  * Tests the URL normalization.
diff --git a/tests/PHPUnit/IntegrationTestCase.php b/tests/PHPUnit/IntegrationTestCase.php
index 624efa9b555ffd3dac5c673a4195a10374427af1..961f8d02a514d242751da887994ecf35b325c7df 100755
--- a/tests/PHPUnit/IntegrationTestCase.php
+++ b/tests/PHPUnit/IntegrationTestCase.php
@@ -5,9 +5,10 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Config;
-use Piwik\Core\Piwik;
-use Piwik\Core\Common;
+use Piwik\Config;
+use Piwik\Piwik;
+use Piwik\Common;
+use Piwik\Access;
 
 require_once PIWIK_INCLUDE_PATH . '/libs/PiwikTracker/PiwikTracker.php';
 
@@ -39,8 +40,8 @@ abstract class IntegrationTestCase extends PHPUnit_Framework_TestCase
      */
     public static function createAccessInstance()
     {
-        Piwik_Access::setSingletonInstance(null);
-        Piwik_Access::getInstance();
+        Access::setSingletonInstance(null);
+        Access::getInstance();
         Piwik_PostEvent('FrontController.initAuthenticationObject');
     }
     
diff --git a/tests/PHPUnit/Plugins/LanguagesManagerTest.php b/tests/PHPUnit/Plugins/LanguagesManagerTest.php
index 2b0571460c2d2ba32cb7a3e78228b12325a6260d..4f12ebcf6300e9b0279dc3ee3eb283fc7a6a801e 100755
--- a/tests/PHPUnit/Plugins/LanguagesManagerTest.php
+++ b/tests/PHPUnit/Plugins/LanguagesManagerTest.php
@@ -5,7 +5,7 @@
  * @link    http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Common;
+use Piwik\Common;
 
 require_once 'LanguagesManager/API.php';
 
diff --git a/tests/PHPUnit/Plugins/LoginTest.php b/tests/PHPUnit/Plugins/LoginTest.php
index e6b00deadaeaba62221d9abbd83953c4b1ac8ff5..39799719fa2ab7cd8ff7cce394c59191f98ebba5 100644
--- a/tests/PHPUnit/Plugins/LoginTest.php
+++ b/tests/PHPUnit/Plugins/LoginTest.php
@@ -5,8 +5,9 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Config;
-use Piwik\Core\Piwik;
+use Piwik\Config;
+use Piwik\Piwik;
+use Piwik\Access;
 
 require_once 'Login/Auth.php';
 
@@ -23,7 +24,7 @@ class LoginTest extends DatabaseTestCase
 
         //finally we set the user as a super user by default
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         // we make sure the tests don't depend on the config file content
         Config::getInstance()->superuser = array(
@@ -42,7 +43,7 @@ class LoginTest extends DatabaseTestCase
         // no login; no token auth
         $auth = new Piwik_Login_Auth();
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -55,7 +56,7 @@ class LoginTest extends DatabaseTestCase
         $auth = new Piwik_Login_Auth();
         $auth->setLogin('');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -68,7 +69,7 @@ class LoginTest extends DatabaseTestCase
         $auth = new Piwik_Login_Auth();
         $auth->setLogin('nobody');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -82,7 +83,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin('anonymous');
         $auth->setTokenAuth('');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -96,7 +97,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin('');
         $auth->setTokenAuth('anonymous');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -110,7 +111,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin(null);
         $auth->setTokenAuth('anonymous');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -124,7 +125,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin('anonymous');
         $auth->setTokenAuth('anonymous');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -140,7 +141,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin('anonymous');
         $auth->setTokenAuth('');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -156,7 +157,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin('');
         $auth->setTokenAuth('anonymous');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -172,7 +173,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin('anonymous');
         $auth->setTokenAuth(0);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -188,7 +189,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin(null);
         $auth->setTokenAuth('anonymous');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::SUCCESS, $rc->getCode());
+        $this->assertEquals(AuthResult::SUCCESS, $rc->getCode());
     }
 
     /**
@@ -204,7 +205,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin('anonymous');
         $auth->setTokenAuth('anonymous');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::SUCCESS, $rc->getCode());
+        $this->assertEquals(AuthResult::SUCCESS, $rc->getCode());
     }
 
     protected function _setUpUser()
@@ -232,7 +233,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth('');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -248,7 +249,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth($user['password']);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -264,7 +265,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth(md5($user['password']));
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -280,7 +281,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin('');
         $auth->setTokenAuth($user['tokenAuth']);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -296,7 +297,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin(0);
         $auth->setTokenAuth(0);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -312,7 +313,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin(0);
         $auth->setTokenAuth($user['tokenAuth']);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -328,7 +329,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth(0);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -344,7 +345,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin(null);
         $auth->setTokenAuth($user['tokenAuth']);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::SUCCESS, $rc->getCode());
+        $this->assertEquals(AuthResult::SUCCESS, $rc->getCode());
     }
 
     /**
@@ -360,7 +361,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth($user['tokenAuth']);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::SUCCESS, $rc->getCode());
+        $this->assertEquals(AuthResult::SUCCESS, $rc->getCode());
     }
 
     /**
@@ -377,7 +378,7 @@ class LoginTest extends DatabaseTestCase
         $hash = $auth->getHashTokenAuth($user['login'], $user['tokenAuth']);
         $auth->setTokenAuth($hash);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::SUCCESS, $rc->getCode());
+        $this->assertEquals(AuthResult::SUCCESS, $rc->getCode());
     }
 
     /**
@@ -395,7 +396,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth('');
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -413,7 +414,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth($user['password']);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -431,7 +432,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth($password);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -449,7 +450,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin('');
         $auth->setTokenAuth($tokenAuth);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -467,7 +468,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth(0);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::FAILURE, $rc->getCode());
+        $this->assertEquals(AuthResult::FAILURE, $rc->getCode());
     }
 
     /**
@@ -485,7 +486,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin(null);
         $auth->setTokenAuth($tokenAuth);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::SUCCESS_SUPERUSER_AUTH_CODE, $rc->getCode());
+        $this->assertEquals(AuthResult::SUCCESS_SUPERUSER_AUTH_CODE, $rc->getCode());
     }
 
     /**
@@ -503,7 +504,7 @@ class LoginTest extends DatabaseTestCase
         $auth->setLogin($user['login']);
         $auth->setTokenAuth($tokenAuth);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::SUCCESS_SUPERUSER_AUTH_CODE, $rc->getCode());
+        $this->assertEquals(AuthResult::SUCCESS_SUPERUSER_AUTH_CODE, $rc->getCode());
     }
 
     /**
@@ -522,6 +523,6 @@ class LoginTest extends DatabaseTestCase
         $hash = $auth->getHashTokenAuth($user['login'], $tokenAuth);
         $auth->setTokenAuth($hash);
         $rc = $auth->authenticate();
-        $this->assertEquals(Piwik_Auth_Result::SUCCESS_SUPERUSER_AUTH_CODE, $rc->getCode());
+        $this->assertEquals(AuthResult::SUCCESS_SUPERUSER_AUTH_CODE, $rc->getCode());
     }
 }
diff --git a/tests/PHPUnit/Plugins/MobileMessagingTest.php b/tests/PHPUnit/Plugins/MobileMessagingTest.php
index 648038220fab4a78cd55603d23a48b18deccf9ef..7460f51cbe8cf0d49270ce3468e3e742ec1de4f8 100644
--- a/tests/PHPUnit/Plugins/MobileMessagingTest.php
+++ b/tests/PHPUnit/Plugins/MobileMessagingTest.php
@@ -6,6 +6,8 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+use Piwik\Access;
+
 class MobileMessagingTest extends DatabaseTestCase
 {
     protected $idSiteAccess;
@@ -18,7 +20,7 @@ class MobileMessagingTest extends DatabaseTestCase
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
         //finally we set the user as a super user by default
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         $this->idSiteAccess = Piwik_SitesManager_API::getInstance()->addSite("test", "http://test");
 
diff --git a/tests/PHPUnit/Plugins/MultiSitesTest.php b/tests/PHPUnit/Plugins/MultiSitesTest.php
index eab6e15bfb070dbe8983991a5aa5f5739a562957..c1765dd08b14054901033eeba1a122f82f0b8c6b 100644
--- a/tests/PHPUnit/Plugins/MultiSitesTest.php
+++ b/tests/PHPUnit/Plugins/MultiSitesTest.php
@@ -6,6 +6,8 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+use Piwik\Access;
+
 class MultiSitesTest extends DatabaseTestCase
 {
     protected $idSiteAccess;
@@ -14,7 +16,7 @@ class MultiSitesTest extends DatabaseTestCase
     {
         parent::setUp();
 
-        $access = Piwik_Access::getInstance();
+        $access = Access::getInstance();
         $access->setSuperUser(true);
 
         $this->idSiteAccess = Piwik_SitesManager_API::getInstance()->addSite("test", "http://test");
diff --git a/tests/PHPUnit/Plugins/PDFReportsTest.php b/tests/PHPUnit/Plugins/PDFReportsTest.php
index a643a8bd4c43bbf834d4b2c617124fc95078f558..ce5a7333f7b6b10d748d827dcdf36d086982baa2 100644
--- a/tests/PHPUnit/Plugins/PDFReportsTest.php
+++ b/tests/PHPUnit/Plugins/PDFReportsTest.php
@@ -5,6 +5,8 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+use Piwik\Access;
+
 require_once 'PDFReports/PDFReports.php';
 
 class PDFReportsTest extends DatabaseTestCase
@@ -208,7 +210,7 @@ class PDFReportsTest extends DatabaseTestCase
     {
         $anonymousAccess = new FakeAccess;
         FakeAccess::$identity = 'anonymous';
-        Piwik_Access::setSingletonInstance($anonymousAccess);
+        Access::setSingletonInstance($anonymousAccess);
 
         $pdfReportPlugin = new Piwik_PDFReports();
         $this->assertEquals(
@@ -497,6 +499,6 @@ class PDFReportsTest extends DatabaseTestCase
     {
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
     }
 }
diff --git a/tests/PHPUnit/Plugins/PrivacyManagerTest.php b/tests/PHPUnit/Plugins/PrivacyManagerTest.php
index 3c8c32cd101eb73ed869beeb75501a0ae1137fa1..770efaa445cc39ce06ffd347dcdbba2143a979c8 100755
--- a/tests/PHPUnit/Plugins/PrivacyManagerTest.php
+++ b/tests/PHPUnit/Plugins/PrivacyManagerTest.php
@@ -5,9 +5,9 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Config;
-use Piwik\Core\Piwik;
-use Piwik\Core\Common;
+use Piwik\Config;
+use Piwik\Piwik;
+use Piwik\Common;
 
 require_once 'PrivacyManager/PrivacyManager.php';
 
@@ -754,7 +754,7 @@ class PrivacyManagerTest extends IntegrationTestCase
         $this->assertEquals(27, $this->_getTableCount('log_action'));
 
         $archiveTables = self::_getArchiveTableNames();
-//        var_export(Piwik_FetchAll("SELECT * FROM " . Piwik_Common::prefixTable($archiveTables['numeric'][0])));
+//        var_export(Piwik_FetchAll("SELECT * FROM " . Common::prefixTable($archiveTables['numeric'][0])));
 
         $janMetricCount = $this->_getExpectedNumericArchiveCountJan();
         $this->assertEquals($janMetricCount, $this->_getTableCount($archiveTables['numeric'][0])); // January
diff --git a/tests/PHPUnit/Plugins/SEOTest.php b/tests/PHPUnit/Plugins/SEOTest.php
index d74c281ed5f69bc4e0875bdbc06c82298e9be343..23010423a1be225e8c331b8af477d2a2be56a0a3 100644
--- a/tests/PHPUnit/Plugins/SEOTest.php
+++ b/tests/PHPUnit/Plugins/SEOTest.php
@@ -5,6 +5,8 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+use Piwik\Access;
+
 class SEOTest extends PHPUnit_Framework_TestCase
 {
     public function setUp()
@@ -18,7 +20,7 @@ class SEOTest extends PHPUnit_Framework_TestCase
 
         //finally we set the user as a super user by default
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         $user_agents = array(
             'Mozilla/6.0 (Macintosh; I; Intel Mac OS X 11_7_9; de-LI; rv:1.9b4) Gecko/2012010317 Firefox/10.0a4',
diff --git a/tests/PHPUnit/Plugins/SegmentEditorTest.php b/tests/PHPUnit/Plugins/SegmentEditorTest.php
index 18b0fabd68643839785369da84c396489336079c..115ff2d05749ecbc4539452232c5a150c9433b04 100644
--- a/tests/PHPUnit/Plugins/SegmentEditorTest.php
+++ b/tests/PHPUnit/Plugins/SegmentEditorTest.php
@@ -1,5 +1,6 @@
 <?php
-use Piwik\Core\Piwik;
+use Piwik\Piwik;
+use Piwik\Access;
 
 /**
  * Piwik - Open source web analytics
@@ -24,7 +25,7 @@ class SegmentEditorTest extends DatabaseTestCase
         //finally we set the user as a super user by default
         FakeAccess::$superUser = true;
         FakeAccess::$superUserLogin = 'superusertest';
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         Piwik_SitesManager_API::getInstance()->addSite('test', 'http://example.org');
     }
diff --git a/tests/PHPUnit/Plugins/SitesManagerTest.php b/tests/PHPUnit/Plugins/SitesManagerTest.php
index 68a330239044b0329492086c4fcf7682d29c8a24..05cfb24095eaf6a7d6bada22399141fd6677e3e9 100644
--- a/tests/PHPUnit/Plugins/SitesManagerTest.php
+++ b/tests/PHPUnit/Plugins/SitesManagerTest.php
@@ -5,6 +5,8 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+use Piwik\Access;
+
 class SitesManagerTest extends DatabaseTestCase
 {
     public function setUp()
@@ -14,7 +16,7 @@ class SitesManagerTest extends DatabaseTestCase
         // setup the access layer
         $pseudoMockAccess = new FakeAccess;
         FakeAccess::$superUser = true;
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
     }
 
     /**
@@ -953,7 +955,7 @@ class SitesManagerTest extends DatabaseTestCase
         $idsite = Piwik_SitesManager_API::getInstance()->addSite("site2", array("http://piwik.com", "http://piwik.net"));
         $idsite = Piwik_SitesManager_API::getInstance()->addSite("site3", array("http://piwik.com", "http://piwik.org"));
 
-        $saveAccess = Piwik_Access::getInstance();
+        $saveAccess = Access::getInstance();
 
         Piwik_UsersManager_API::getInstance()->addUser("user1", "geqgegagae", "tegst@tesgt.com", "alias");
         Piwik_UsersManager_API::getInstance()->setUserAccess("user1", "view", array(1));
@@ -971,7 +973,7 @@ class SitesManagerTest extends DatabaseTestCase
         FakeAccess::$identity = 'user1';
         FakeAccess::setIdSitesView(array(1));
         FakeAccess::setIdSitesAdmin(array());
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
         $idsites = Piwik_SitesManager_API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
         $this->assertEquals(1, count($idsites));
 
@@ -986,7 +988,7 @@ class SitesManagerTest extends DatabaseTestCase
         FakeAccess::$identity = 'user2';
         FakeAccess::setIdSitesView(array(1));
         FakeAccess::setIdSitesAdmin(array(3));
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
         $idsites = Piwik_SitesManager_API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
         $this->assertEquals(2, count($idsites));
 
@@ -995,11 +997,11 @@ class SitesManagerTest extends DatabaseTestCase
         FakeAccess::$identity = 'user3';
         FakeAccess::setIdSitesView(array(1, 2));
         FakeAccess::setIdSitesAdmin(array(3));
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
         $idsites = Piwik_SitesManager_API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
         $this->assertEquals(3, count($idsites));
 
-        Piwik_Access::setSingletonInstance($saveAccess);
+        Access::setSingletonInstance($saveAccess);
     }
 
     /**
diff --git a/tests/PHPUnit/Plugins/UserCountryTest.php b/tests/PHPUnit/Plugins/UserCountryTest.php
index 1f4e20b766dda4cb1c8531c30a590e80e52c684f..effc0b64a9b7f7db417bc3f86913817aa2efd65c 100644
--- a/tests/PHPUnit/Plugins/UserCountryTest.php
+++ b/tests/PHPUnit/Plugins/UserCountryTest.php
@@ -5,7 +5,7 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Piwik;
+use Piwik\Piwik;
 
 require_once PIWIK_INCLUDE_PATH . '/plugins/UserCountry/UserCountry.php';
 require_once 'UserCountry/functions.php';
diff --git a/tests/PHPUnit/Plugins/UsersManagerTest.php b/tests/PHPUnit/Plugins/UsersManagerTest.php
index e720a0082b2f38900d060e69c3eb6cebabdd3839..9144c670376c0127c8b853ab4a3cf1bf9bb54683 100644
--- a/tests/PHPUnit/Plugins/UsersManagerTest.php
+++ b/tests/PHPUnit/Plugins/UsersManagerTest.php
@@ -1,5 +1,6 @@
 <?php
-use Piwik\Core\Config;
+use Piwik\Config;
+use Piwik\Access;
 
 /**
  * Piwik - Open source web analytics
@@ -24,7 +25,7 @@ class UsersManagerTest extends DatabaseTestCase
         //finally we set the user as a super user by default
         FakeAccess::$superUser = true;
         FakeAccess::$superUserLogin = 'superusertest';
-        Piwik_Access::setSingletonInstance($pseudoMockAccess);
+        Access::setSingletonInstance($pseudoMockAccess);
 
         // we make sure the tests don't depend on the config file content
         Config::getInstance()->superuser = array(
diff --git a/tests/PHPUnit/UI/UIIntegrationTest.php b/tests/PHPUnit/UI/UIIntegrationTest.php
index 905ca23d1f522af5d4a7d89c636d3b5158de6284..04cd86d70ba93f6196c4f0419270e7f82fbb7d58 100644
--- a/tests/PHPUnit/UI/UIIntegrationTest.php
+++ b/tests/PHPUnit/UI/UIIntegrationTest.php
@@ -5,7 +5,8 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-use Piwik\Core\Piwik;
+use Piwik\Piwik;
+use Piwik\Access;
 
 /**
  * Tests UI code by grabbing screenshots of webpages and comparing with expected files.
@@ -25,7 +26,7 @@ class Test_Piwik_Integration_UIIntegrationTest extends IntegrationTestCase
     
     public static function createAccessInstance()
     {
-        Piwik_Access::setSingletonInstance($access = new Test_Piwik_Access_OverrideLogin());
+        Access::setSingletonInstance($access = new Test_Access_OverrideLogin());
         Piwik_PostEvent('FrontController.initAuthenticationObject');
     }
     
diff --git a/tests/PHPUnit/bootstrap.php b/tests/PHPUnit/bootstrap.php
index e31ac8cc72a52d82074c9ad3c36607cb26df3a83..67d4e43382bc5b8f713f29557fd8b8f64feeec79 100644
--- a/tests/PHPUnit/bootstrap.php
+++ b/tests/PHPUnit/bootstrap.php
@@ -102,7 +102,7 @@ Try again.
     if (strpos($fetched, $expectedString) === false) {
         echo "\nPiwik should be running at: " . $piwikServerUrl
             . "\nbut this URL returned an unexpected response: '"
-            . substr($fetched, 0, 300) . "...'\n\n";
+            . substr($fetched, 0, 700) . "...'\n\n";
         exit;
     }
 }
diff --git a/tests/PHPUnit/proxy/piwik.php b/tests/PHPUnit/proxy/piwik.php
index 1f4c58258c9531965ae16f12629138cf388c7c07..b6ccd4711fde003927373b277021aa19bf9d1f43 100755
--- a/tests/PHPUnit/proxy/piwik.php
+++ b/tests/PHPUnit/proxy/piwik.php
@@ -11,7 +11,7 @@
 
 // Wrapping the request inside ob_start() calls to ensure that the Test
 // calling us waits for the full request to process before unblocking
-use Piwik\Core\Config;
+use Piwik\Config;
 
 ob_start();
 
diff --git a/tests/resources/staticFileServer.php b/tests/resources/staticFileServer.php
index 510e1794dcb3d363ade458af058c272b94d1557b..3860cf19102dc2038136061d95c7c1d9cee641e3 100644
--- a/tests/resources/staticFileServer.php
+++ b/tests/resources/staticFileServer.php
@@ -9,8 +9,8 @@
  * This decision has a structural impact on the usual unit test file structure
  * serveStaticFile.test.php has been created to avoid making too many modifications to /tests/core/Piwik.test.php
  */
-use Piwik\Core\Piwik;
-use Piwik\Core\Common;
+use Piwik\Piwik;
+use Piwik\Common;
 
 define('PIWIK_DOCUMENT_ROOT', dirname(__FILE__).'/../../');
 if(file_exists(PIWIK_DOCUMENT_ROOT . '/bootstrap.php'))