diff --git a/core/lostpassword/controller.php b/core/lostpassword/controller.php
index f761e45d25f98ac894b07a6d9fa119980ba82672..3c8099591a111891c2d9a58fbfe4134207c05a59 100644
--- a/core/lostpassword/controller.php
+++ b/core/lostpassword/controller.php
@@ -5,11 +5,12 @@
  * later.
  * See the COPYING-README file.
  */
+namespace OC\Core\LostPassword;
 
-class OC_Core_LostPassword_Controller {
+class Controller {
 	protected static function displayLostPasswordPage($error, $requested) {
-		$isEncrypted = OC_App::isEnabled('files_encryption');
-		OC_Template::printGuestPage('core/lostpassword', 'lostpassword',
+		$isEncrypted = \OC_App::isEnabled('files_encryption');
+		\OC_Template::printGuestPage('core/lostpassword', 'lostpassword',
 			array('error' => $error,
 				'requested' => $requested,
 				'isEncrypted' => $isEncrypted));
@@ -19,12 +20,12 @@ class OC_Core_LostPassword_Controller {
 		$route_args = array();
 		$route_args['token'] = $args['token'];
 		$route_args['user'] = $args['user'];
-		OC_Template::printGuestPage('core/lostpassword', 'resetpassword',
+		\OC_Template::printGuestPage('core/lostpassword', 'resetpassword',
 			array('success' => $success, 'args' => $route_args));
 	}
 
 	protected static function checkToken($user, $token) {
-		return OC_Preferences::getValue($user, 'owncloud', 'lostpassword') === hash('sha256', $token);
+		return \OC_Preferences::getValue($user, 'owncloud', 'lostpassword') === hash('sha256', $token);
 	}
 
 	public static function index($args) {
@@ -33,7 +34,7 @@ class OC_Core_LostPassword_Controller {
 
 	public static function sendEmail($args) {
 
-		$isEncrypted = OC_App::isEnabled('files_encryption');
+		$isEncrypted = \OC_App::isEnabled('files_encryption');
 
 		if(!$isEncrypted || isset($_POST['continue'])) {
 			$continue = true;
@@ -41,26 +42,26 @@ class OC_Core_LostPassword_Controller {
 			$continue = false;
 		}
 
-		if (OC_User::userExists($_POST['user']) && $continue) {
-			$token = hash('sha256', OC_Util::generateRandomBytes(30).OC_Config::getValue('passwordsalt', ''));
-			OC_Preferences::setValue($_POST['user'], 'owncloud', 'lostpassword',
+		if (\OC_User::userExists($_POST['user']) && $continue) {
+			$token = hash('sha256', \OC_Util::generateRandomBytes(30).\OC_Config::getValue('passwordsalt', ''));
+			\OC_Preferences::setValue($_POST['user'], 'owncloud', 'lostpassword',
 				hash('sha256', $token)); // Hash the token again to prevent timing attacks
-			$email = OC_Preferences::getValue($_POST['user'], 'settings', 'email', '');
+			$email = \OC_Preferences::getValue($_POST['user'], 'settings', 'email', '');
 			if (!empty($email)) {
-				$link = OC_Helper::linkToRoute('core_lostpassword_reset',
+				$link = \OC_Helper::linkToRoute('core_lostpassword_reset',
 					array('user' => $_POST['user'], 'token' => $token));
-				$link = OC_Helper::makeURLAbsolute($link);
+				$link = \OC_Helper::makeURLAbsolute($link);
 
-				$tmpl = new OC_Template('core/lostpassword', 'email');
+				$tmpl = new \OC_Template('core/lostpassword', 'email');
 				$tmpl->assign('link', $link, false);
 				$msg = $tmpl->fetchPage();
-				$l = OC_L10N::get('core');
-				$from = OCP\Util::getDefaultEmailAddress('lostpassword-noreply');
+				$l = \OC_L10N::get('core');
+				$from = \OCP\Util::getDefaultEmailAddress('lostpassword-noreply');
 				try {
-					$defaults = new OC_Defaults();
-					OC_Mail::send($email, $_POST['user'], $l->t('%s password reset', array($defaults->getName())), $msg, $from, $defaults->getName());
+					$defaults = new \OC_Defaults();
+					\OC_Mail::send($email, $_POST['user'], $l->t('%s password reset', array($defaults->getName())), $msg, $from, $defaults->getName());
 				} catch (Exception $e) {
-					OC_Template::printErrorPage( 'A problem occurs during sending the e-mail please contact your administrator.');
+					\OC_Template::printErrorPage( 'A problem occurs during sending the e-mail please contact your administrator.');
 				}
 				self::displayLostPasswordPage(false, true);
 			} else {
@@ -84,9 +85,9 @@ class OC_Core_LostPassword_Controller {
 	public static function resetPassword($args) {
 		if (self::checkToken($args['user'], $args['token'])) {
 			if (isset($_POST['password'])) {
-				if (OC_User::setPassword($args['user'], $_POST['password'])) {
-					OC_Preferences::deleteKey($args['user'], 'owncloud', 'lostpassword');
-					OC_User::unsetMagicInCookie();
+				if (\OC_User::setPassword($args['user'], $_POST['password'])) {
+					\OC_Preferences::deleteKey($args['user'], 'owncloud', 'lostpassword');
+					\OC_User::unsetMagicInCookie();
 					self::displayResetPasswordPage(true, $args);
 				} else {
 					self::displayResetPasswordPage(false, $args);
diff --git a/core/routes.php b/core/routes.php
index f0f8ce571e22834d915081bef33aca5b41a8a58b..d8c2d03236f4864b436b13d61c037c0d2417bcf7 100644
--- a/core/routes.php
+++ b/core/routes.php
@@ -44,19 +44,18 @@ $this->create('core_ajax_routes', '/core/routes.json')
 	->action('OC_Router', 'JSRoutes');
 $this->create('core_ajax_preview', '/core/preview.png')
 	->actionInclude('core/ajax/preview.php');
-OC::$CLASSPATH['OC_Core_LostPassword_Controller'] = 'core/lostpassword/controller.php';
 $this->create('core_lostpassword_index', '/lostpassword/')
 	->get()
-	->action('OC_Core_LostPassword_Controller', 'index');
+	->action('OC\Core\LostPassword\Controller', 'index');
 $this->create('core_lostpassword_send_email', '/lostpassword/')
 	->post()
-	->action('OC_Core_LostPassword_Controller', 'sendEmail');
+	->action('OC\Core\LostPassword\Controller', 'sendEmail');
 $this->create('core_lostpassword_reset', '/lostpassword/reset/{token}/{user}')
 	->get()
-	->action('OC_Core_LostPassword_Controller', 'reset');
+	->action('OC\Core\LostPassword\Controller', 'reset');
 $this->create('core_lostpassword_reset_password', '/lostpassword/reset/{token}/{user}')
 	->post()
-	->action('OC_Core_LostPassword_Controller', 'resetPassword');
+	->action('OC\Core\LostPassword\Controller', 'resetPassword');
 
 // Not specifically routed
 $this->create('app_css', '/apps/{app}/{file}')