[eluser]boltsabre[/eluser]
When you navigate to 'site' controller, your constructor is checking for logged in status, and if not found it's loading your 'login view'... it's doing this for every function inside your 'site' controller.
When user navigates to 'index' function, it's already checking for this logged in status, and not finding it, it's loading a view. However, your index function is also loading a view, and that's why you're seeing both views.
Your logged_in function should be doing a redirect to your "login" function, rather than just displaying a view.