Routing and transitions handled only through middleware
A more elegant project structure