Cita: para que si algún usuario introduce una URL de las vistas directamente se le redirija a la página de login
Es que deberia ser imposible que se pueda meter la URL de la vista directamente y que se ejecute algo.
Parte del controlador deberia encargarse de crear un objeto "usuario" a partir de la sesion. Luego se puede pasar ese objeto "usuario" al resto de objetos que necesiten hacer comprobaciones de login o permisos.