some refactorings (remove mapper), cleaner code in controller (hopefully)